你如何构建一个iPhone XCode项目?

时间:2010-10-20 23:34:02

标签: iphone xcode structure

构建群组/文件夹的好方法是什么?

我已尝试使用公共组的功能(功能加模型的UI等)。我也尝试过UI,模型等。

前者将各种各样的东西放在一起,很适合iPhone的范例。后者意味着我跳了一下。

您怎么看?

3 个答案:

答案 0 :(得分:18)

标准的Xcode MVC文件夹结构如下。

  1. CoreData :包含DataModel和实体类。

  2. 扩展程序:包含一个类(默认的apple类扩展+项目类扩展。)

  3. Helper :包含第三方类/框架(例如SWRevealController)+桥接类(例如基于Swift的项目中的Obj C类)

  4. 模型:创建一个单例类(例如,AppModel - NSArray,NSDictionary,String等)来保存数据。解决和存储数据的Web服务响应也在这里完成。

  5. 服务:包含Web服务流程(例如,登录验证,HTTP请求/响应)

  6. 查看:包含Storyboard,LaunchScreen.XIB和View Classes。创建子文件夹单元格 - 包含UITableViewCell,UICollectionViewCell等。

  7. 控制器:包含与UIElements相关的逻辑或代码(例如,UIButton的参考+点击动作)

答案 1 :(得分:5)

尽管John有一点意见,但实际上我创建了一个项目来演示我认为我的一般小型或中型代码库的Xcode项目结构。你可以找到它here

以下是它的概述:

  • 来源 - 所有源代码
    • 帐户 - 与帐户相关的类(与会话相关的类,帐户逻辑等)
    • 应用程序 - 与应用程序相关的类。应用程序委托,配置类等
    • Core Additions - 来自苹果课程的扩展和子类
      • 实用程序 - 常规实用程序类。有用的扩展,格式化实用程序,便利类等
      • 基于元素的文件夹 - UIView,UITableViewCell等文件夹
    • 本地持久性 - 本地持久层。与本地数据库的所有交互(领域,核心数据)
      • 存储库 - 所有与模型相关的本地持久性逻辑
    • 常量 - 所有常量。网址,字体,颜色,错误等
    • 模型 - 所有模型(服务器端实体的表示)。我们也会抛出任何对象映射逻辑
    • 模块 - 在这里,我们可以找到按功能划分的每个应用程序的部分
      • 基于模块的文件夹 - 每个文件夹包含所有特定于模块的视图控制器,视图,代理和相关类
    • 网络 - 应用程序的网络层(例如负责与Web服务交互的类)
      • 服务 - 所有与模型相关的网络逻辑
  • 故事板 - 包含所有故事板文件
  • 资源 - 任何其他资源,如媒体,文档,本地化文件等

答案 2 :(得分:3)

这将取决于项目。在我的上一个项目中,我主要是视图,因此我按视图类型组织了视图。