Search code examples
iosswiftapp-storeversionbackwards-compatibility

What Swift Version Should I be using?


I have a few questions related to Swift Versions.

I am currently writing an app in Swift 2.2 I am planning on releasing the app to the App Store before iOS 10 is released. Does that mean I need to stay using Swift 2.2 until iOS 10 is released?

Once iOS 10 is released, if I upgrade to Swift 3.0, will I still be able to build for iOS 8 and 9?

What is the purpose of Swift 2.3? Overall, I'm trying to understand what the optimal time to be upgrading versions of Swift is while maintaining compatibility with older iOS versions.


Solution

  • You will be able to build for iOS 7, 8 and 9 with Swift 3.0. Swift 2.3 is only to give more time for developers to transition to swift 3.0, considering swift 3.0 is not retro-compatible. If you can move to swift 3.0 right now because you are starting a new project and do not plan to release until september, I would suggest to do it. If not, I would suggest to stay at version 2.2 to ensure you can publish to the app store. Swift 2.3 won't be eternally supported by Xcode (nor Swift 3.0 if it loses compatibility), so as soon as Golden master gets released, I would suggest to get on 3.0.