Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialHenrique Teodoro
2,628 PointsObjective-C or Swift?
What's the difference between the two and in terms of simplicity and productivity wich one should i learn ?
3 Answers
William Li
Courses Plus Student 26,868 PointsIt's not as simple as that Swift is nicer and Objective-C is old and messy; there're other things to consider as well.
Below is my answer to another forum post asking about the same question, so I just copied it over here.
If you're writing a new iOS app from scratch solo, you can do it using Swift only, there won't be much of issue for not knowing Objective-C.
However, being an iOS programmers, there're several disadvantage for not knowing Objective-C:
- most of the existing iOS 3rd party libraries, testing frameworks are written in Objective-C.
- inability to collaborate with other iOS developers on a legacy iOS codebase written in Objective-C, which accounts for over 90% of the apps currently on the AppStore.
- Today, very very few companies are willing to hire iOS developers who have no experience with Objective-C.
Objective-C will continue to denominate the world of iOS development for at least several more years; Swift is cool, is new, it's bleeding-edge, it's constantly evolving and changing; many companies are holding off the move to migrate to Swift due to how new the language is, not to mention how much work and effort it takes to migrate large Objective-C codebase to Swift.
agreatdaytocode
24,757 PointsHenrique Teodoro Go with swift! you won't regret it :)
Henrique Teodoro
2,628 PointsThat's what i am planning ;D ty man.
Tristan Gaebler
6,204 PointsSwift is a way more simple than Objective-c. Objective-c is old and messy. Objective-c still has more support because it's been around longer. I would learn Swift though.
Henrique Teodoro
2,628 PointsThanks Dude, on my way to learn Swift o/
Henrique Teodoro
2,628 PointsHenrique Teodoro
2,628 PointsThaks man, i can see that. So learning the two languages are the best option here?
William Li
Courses Plus Student 26,868 PointsWilliam Li
Courses Plus Student 26,868 PointsHi, Henrique, depends on what you are trying to do at the moment. Are you learning iOS development to write your own apps? Or are you learning the skilled needed to be hired as iOS developer?
Henrique Teodoro
2,628 PointsHenrique Teodoro
2,628 PointsI'm learning to write my own apps :)
William Li
Courses Plus Student 26,868 PointsWilliam Li
Courses Plus Student 26,868 Pointscool, I do agree that Swift is a simpler language to work with. You do not have to learn 2 languages simultaneously; go with Swift first, learn it well and you can build any apps you like. Eventually, you may come to the point that perhaps your apps need to make use of a framework or libraries written in Objective-C, then you should pick up some objective-c. But the point here is that, you don't have to concern too much about Objective-C vs Swift here, the hardest part about learning iOS development is to master how to put every component together, the general flow of writing an app, debugging and performance tuneup, stuffs like that. Once you understand those, learning another language for iOS isn't difficult.
Henrique Teodoro
2,628 PointsHenrique Teodoro
2,628 PointsThank you William :D