首先,我作为一名Objective C
开发人员已经有很多年了,在 Swift 发布的时候,我主要是在维护现有的Obj C
项目。从来没有机会完全投入到Swift
应用程序上,无论是从头开始还是维护。当时我的努力主要针对 .Net 和 React Native。
我已经研究过ABI 是什么。这一切都很好,花花公子。从那个答案,我只能假设它是如何发挥作用的Swift
,因为我没有太多参与Swift
。
因此,从简单的猜测来看,所有的骚动、喧嚣和争吵Swift ABI
都与“假设”的事实有关,即当使用 Swift 5 版本(在 Swift 5 之前)编写/编译库时1.0
,Swift
它可以与编写的应用程序一起正常工作在1.0
. 当编写该库的下一个版本时Swift 2.0
,上述编写的应用程序Swift 1.0
将无法使用它,除非编译为Swift 2.0
? 假设我在那个方面是正确的,如果我有一个用 编写的应用程序Swift 4
,并且我希望使用的库是用 编写的,Swift 1.0
我可以使用它吗?Swift 5
现已发布,现在是否ABI
解决了Swift
库和应用程序的问题5+
,而不是5+
与之交互5-
?
如果我亲身经历过这些问题,我可能会对 Swift ABI 问题有更好的理解。
请用涵盖所有案例的实际示例进行解释(如果可能)。
更新:如果 ABI 有任何小版本增加的问题,例如从 swift 4.0 到 4.1,请包括