在Swift中编写库时使用开源

时间:2015-07-21 16:34:53

标签: ios swift

我正在尝试为以下情况找到更多信息/说明:

我正在Swift中编写一个库,并希望在其中使用一些开源库。 如果我只是将它们集成到我的库中,是否存在命名空间冲突的可能性? 如果主机应用程序将使用会发生什么:

  • 完全相同的开源库
  • 相同的库但版本不同

使用CocoaPods会改变一些东西吗? 考虑我在我的库中导入AFNetworking(通过CocoaPods)的场景,主机应用也将使用它。

1 个答案:

答案 0 :(得分:0)

使用相同的库,您不会遇到任何问题。使用不同的版本可能会导致问题,但这将取决于不同版本中所做的更改。

Swift中的命名空间冲突很少见。正如@mattt所说,每个模块都充当命名空间,因此命名与来自另一个模块的类或函数的冲突不会像在Objective-C中那样存在。如果您有命名冲突,编译器会告诉您。在这种情况下,您只需在冲突的签名前加上模块名称。

我强烈建议您使用Cocoapods进行依赖关系管理。它处理版本控制,让您的生活更轻松。