Hello, I am a student studying iOS development in Korea.
I am curious whether it's not possible to contribute to UIColor, so I'm leaving this question.
I wanted to contribute to Swift and thought of a way to contribute to UIColor.
However, no matter how much I searched within Swift, I couldn't find the code for UIColor.
If anyone knows how to do this, I would appreciate your reply.
Have a nice day
UIColor is part of UIKit, which is a closed-source Apple framework, so I'm afraid that you cannot contribute to it.
Thank you very much for your kind response.
I am interested in contributing to Swift for the first time. Are there any topics or issues I can contribute to?
If so, please recommend some.
The answer is complicated.
If by "contribute" you mean make changes or improvements that become part of the Swift programming language—that is actually quite a difficult and advanced task, for a number of reasons.
- Language changes or new features have to go through the Swift Evolution process. This involves putting together a formal proposal to be discussed at length and considered by the Language Workgroup, a small group of language experts (mostly but not entirely at Apple) who decide what changes will be accepted.
- Before they will consider a change, you also have to actually write the modifications to the Swift compiler needed to implement the change.
- The compiler is mostly written in C++, and is extremely complicated and incompletely documented, so this is a prohibitively difficult task for most of us. The Standard Library (basic language pieces like
Comparable, etc.) is at least written in Swift, but is complicated also, and written in a register of Swift that is quite different from what you or I may be used to as iOS developers.
- The Language Workgroup is highly selective about what changes they accept. Stability is a goal and there is a strong bias against changing the language at this point. Realistically, most accepted changes are proposed and implemented by Apple and its employees, although outside contributions do happen also.
That said, there are many ways to contribute to the Swift ecosystem more broadly. There are many open-source frameworks and libraries that you could propose features for, with a much more streamlined process; or, if you have an idea for software tools that could benefit others, you could write your own. You can also participate in discussions about proposed changes to Swift on these forums, which if you have valuable thoughts is a contribution in itself.
Realistically, it's unlikely that anyone is going to hand you a specific idea about how to contribute to Swift. You would need to notice something you think could be created or improved, and then figure out yourself how to do it. If you are doing that, and have specific questions along the way, you will likely find people willing help answer them.
Hello Christopher, I'm Kobe from Korea, studying iOS and Swift.
I've read your sincere reply very thoroughly, even taking notes of it in my notebook.
I sincerely thank you for your thoughtful response.
While studying here in Korea, I was struggling to find information about contributing to Swift. Then, I learned about Swift Forum and heard it's a place for active exchange, which made me write with a nervous heart.
I never expected someone like you to write back to me with such sincerity.
I am truly grateful.
No one else has provided me with information in such a detailed and careful manner as you have. Your message was like an oasis in a desert to me, who was thirsting for knowledge.
I am moved and will never forget your message, Christopher.
Thank you sincerely.
I hope you have a happy day too.
With all sincerity from Korea, Kobe.