我发布了几个用Swift 2.0和2.1编写的应用程序.现在Apple刚开源Swift并宣布Swift 3.0将于明年发布.在Swift 3.0发布后,我的应用程序仍然有用吗?
我想你在这里问两个不同的问题.
当Swift 3推出时,您的应用程序是否会在新操作系统上执行?
您的应用程序在启动时是否可以在新操作系统上运行?
关于第一个问题,是的,你的应用程序将执行,即使它是针对Swift 2编译的.Swift应用程序在其捆绑包中嵌入了Swift运行时库,因此您在这方面是安全的.您会注意到Swift捆绑包总是比Objective-C对应物大4-5 MB,这正是原因所在.
关于第二个问题,与任何新的操作系统版本一样,无法保证您的应用程序能够像以前版本的操作系统那样工作.虽然根据我的经验,Apple在过去的几个OS版本中做了相当不错的工作,尽管你的里程可能会有所不同.
如果你问你用Swift 2.0/2.1编写的代码是否会在Swift 3.0下编译,那么它可能不会.引自Swift编程语言演变:
完全源兼容性:Swift 3.0不提供完全的源兼容性.相反,它可以并将引入支持Swift 3.0主要目标所需的源代码更改.
但就像@Randy所说,你之前编译的应用程序仍将运行.