Xcode 4中的组织是否有"最佳实践"?

bra*_*ray 15 iphone file ios xcode4

我来自java世界,在我的理解中,文件/类应该在包/文件夹中布置得很好.

Xcode4的最佳实践是什么?我还找不到Apple的指南.如果有人能把我推到正确的文件,我会很高兴.

如果没有文件:最好的做法是什么?我发现在一个项目文件夹中包含所有Classes有点奇怪 - 在Xcode视图或文件结构中(奇怪的是文件结构似乎不等于Xcode中的可视化结构).当然,该项目将在版本控制上(在GitHub上).

提前谢谢了!

Ken*_*ner 9

首先,我喜欢将消防控制器和相关类别的类别分组.但不仅仅是在XCode中创建的组中,也包括在真实文件夹中.因此,当创建一个组而不是在XCode中创建它时,首先在Finder中创建它,然后将该文件夹拖到XCode中并将其组成一个组.现在,当您在该组中添加新文件时,它们也将进入磁盘上的该文件夹.

其他一些随意的想法:

命名:由于您没有名称空间,因此必须在类前面加上两个或三个字母的前缀(Apple建议使用三个).即使起初看起来很奇怪,也要这样做.

资源:默认项目喜欢将xib文件与视图控制器分开.在任何大小的应用程序中,我更喜欢将视图控制器和xib文件分组在一个位置.你甚至可以通过这种方式进行图像处理,但通常只需要很少的图像就可以将它们放在一个地方.

应用程序:我喜欢将所有其他应用程序特定文件(app delegate,info.plist,pch文件,main.m等)分组到列表顶部的一个Application组中,以便于查找这些位.


Mos*_*she 7

首先,看一下默认的项目结构.虽然它并不完美,但Xcode中有一些默认的"组".使用这些作为一般准则.(正如您所提到的,组不是文件系统文件夹,但是当您导入资源时,系统会提示您为文件夹创建组.)

虽然关于文件结构的官方约定并不多,但有些事情你可以做,就像我一样,去抓取组织痒.我在磁盘上的项目目录中创建了一些子文件夹.这里是其中的一些:

  • 音频:音频文件也可以获得自己的组.

  • 外部库:如果我要导入其他人的代码,我将创建一个名为"libraries"的组,然后为每个组创建一个子组.

  • 图像:在那里,您可以根据需要创建子文件夹/子组.(一个用于图标,一个用于主菜单等)

  • 托管对象:当我在项目中使用Core Data时,我经常会通过Xcode的建模工具生成子类.我喜欢将它们保存在一个单独的组和一个单独的文件夹中.

  • 视图控制器:根据项目的不同,我可能会对视图控制器进行不同的分组.例如,我可能会将所有"编辑"和"观众"保留在不同的组中.

最终,Groups用于简化项目管理,文件夹用于简化文件管理.这完全取决于你如何做到这一点.正如Bill Brasky指出的那样,在编译时,组织中没有一个真正有所作为.(如果你想发疯,请看看Xcode 4中的"Build Phases"屏幕.复制阶段是你所有相关文件的混乱.)