One year ago Apple introduced Swift, which was a very surprising move. What remains after one year?
The euphoria about Swift vanished after a short time due to the instability of Xcode 6.0, because there were a lot of crashes and blackouts of the autocompletion. Everyone who worked with an early Version of Xcode 6 knows the error message „Source Kit terminated. Editor functionality temporarily limited“.
Nevertheless it was still possible to do productive work if you knew some workarounds like deleting the „Derived Data“ folder regularly . Over the year, Xcode 6 made a big progress in terms of stability and quality. The only feature it still lacks is a refactoring tool.
However, the promised compatibility with Objective-C was very good out of the box. It was no problem at all to use Swift and Objective-C in parallel in one project – anything else would have been a deal breaker because all of Apples frameworks are still written in Objective-C.
Swift as a programming language as such is a no-brainer. Although Objective-C is still a very good programming language, Swift is far more modern and accessible. Already the better type safety makes Swift in my opinion a better programming language than Objective-C, because the probability of crashes is lower. But what I like the most about Swift is that many features feel much more natural compared to Objective-C. For example, properties are now a core feature of the language – and not a workaround as in Objective-C (yes, declaring properties in an anonymous category IS a workaround!).
The language is still very and young and, therefore, there are still a lot of changes. The step to Swift 1.2 was a big one and existing source code needed to be migrated. The same will happen with Swift 2.0. Nevertheless, in my opinion it is better to accept these inconveniences than to stop the necessary evolution of a young language like Swift.
It is no question at all that Apple stands behind Swift. At WWDC 2015, there was not a lot to hear about Objective-C. Just the introduction of generics was a topic, but the sole purpose of this feature is a better compatibility with Swift.
Should you use Swift? Yes you should! It was not an easy start due to the quality of the developer tools, but now I don’t see any reasons not to use Swift. And even if Apple is saying something different – I am not very optimistic about the future of Objective-C…