By John Gruber
Streaks: The to-do list that helps you form good habits. For iPhone, iPad and Mac.
Aaron Hillegass, who I think is universally regarded as the preeminent teacher of Cocoa:
When Apple announced Swift, I heard a few people say “Hurray! Now I can be an iOS developer without learning Objective-C!” I have three messages for these people:
- If you want to be an iOS developer, you will still need to know Objective-C.
- Objective-C is easier to learn than Swift.
- Once you know Objective-C, it will be easy to learn Swift.
Before I proceed, let me preface this with a confession of love for Swift. The syntax is lovely. The Swift compiler will catch so many errors for us; I’m certain that when everyone is coding in Swift the reliability of apps will improve considerably. The enum construct is gorgeous. Swift is a major step forward for the entire iOS and Mac OS X ecosystem. But…
Points 1 and 3 I agree with. Point 2, I’m not so sure about. But the real question is time. I don’t think anyone would dispute that a serious Mac or iOS developer needs to know Objective-C today. But what about a year from now? Two years? Five? At some point, the answer to “Do I need to learn Objective-C?” will be “No.” I don’t know when that will be.
I’m bullish on Swift’s uptake not because I think it will appeal to new developers (although eventually I think that will help too), but because I think it appeals to the huge base of developers who already know Objective-C and Apple’s frameworks.
★ Wednesday, 11 June 2014