iOS / XCode 目标中的单独图层

iOS / XCode separate layers in targets

我是 iOS 和 XCode 的新手,具有 .Net 背景。所以在 Visual Studio 中,我通常会将应用程序的各个层(例如 WebApp 层、业务逻辑层、数据访问层等)分离到单独的项目中,这样我就可以控制每个项目所依赖的内容等。

所以我的问题是 XCode 中是否有类似的内容?我尝试对目标使用静态库模板,它似乎有效,但我想知道这种方法是否有任何缺点?我在 Internet 上找到的所有示例都只是在图层的应用程序目标中显示了一个文件夹结构,这是执行此操作的首选方式吗?为什么?

我也在使用 Swift 如果这有什么不同,但我仍然依赖于在 Objective-C 中开发的第 3 方库

Xcode6 / iOS8 中的新功能,您可以制作一个框架,从而将您的代码分成多个目标。这是分离可重用功能的一种非常简单的方法。它还具有隐私的优势;在 Swift 中,每个框架都是一个模块,一个模块导入另一个模块只能看到导入模块中声明为 public.

的那些成员

不过,一般来说,我建议你不要担心这个;只需使用 Cocoa 鼓励的 MVC 架构在概念上组织您的 类,并使用 "groups" 在您的项目中物理地组织它们(出现在 Xcode 的项目中的假文件夹航海家)。原因是你的代码很少会被证明是可重用的,所以这真的只是让编辑/开发/维护这个项目尽可能简单的问题。