【问题标题】:Should you use targets for code you don't own?你应该为你不拥有的代码使用目标吗?
【发布时间】:2017-07-14 21:18:30
【问题描述】:

我在我的项目https://github.com/nicklockwood/SwipeView 中使用了这个第三方视图控件,该项目不支持 CocoaPods 或 Carthage。

注意:我的整个项目是 Swift,而其他代码是 Objective-C。

为了将它集成到我的项目中,我只是将 .h 和 .m 文件拖到我的项目中。

这是正确的方法吗?相反,我应该创建一个新目标并将这些文件放在那里吗?我做出这个选择有什么考虑吗?

【问题讨论】:

  • 我删除了这两个语言标签,因为您的问题确实与任何特定语言无关。这是一个关于组织项目的更普遍的问题。

标签: xcode cocoa targets


【解决方案1】:

我已将这种技术(构建静态库的单独目标)用于第三方代码 - 即使该库确实支持 CocoaPods 或 Carthage。

对我来说,一个好处是在第三方代码更新之前发生了重大更改,尤其是工具链的较新版本。禁用例如很简单仅在该目标中某些较新的编译器警告,同时保持项目的其余部分尽可能干净/安全。

在混合 Obj-C 和 Swift 时,它也相当整洁。

我没有发现缺点,只要您愿意自己管理项目集成(否则可能由 CocoaPods 处理)。我的 macOS 项目中往往只有一两个第三方库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 2018-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    相关资源
    最近更新 更多