project 包含了以下信息:
源文件
代码的头文件和实现文件
静态库,动态库,
资源文件(如文本,xml,plist等)
图片资源
界面资源文件(xib, storyboard等)
在文件结构的导航中,采用group去组织文件(实际开发中,尽量使用实体文件夹)
project的编译级别配置文件如(debug, release)
target
运行环境如:debug,test
project可以单独存在,或者存在于一个workspace中。
target
target定义了构造一个product所需的文件和编译指令。一个target对应于一个product。target说白了就是
告诉编译系统要编译的文件和编译设置。编译指令就是根据build settings and build phases来确定的。
target之间可以进行依赖。如果一个target的编译需要另外一个target作为他的输入,那么我们就可以说前者依赖于后者。如果这两个target在同一个workspace里面,Xcode可以发现他们的依赖关系,这种依赖称之为隐式依赖。当然你可以通过设置,明确他们的依赖关系。
workspace
workspace是Xcode的一种文件,用来管理工程和里面的文件,一个workspace可以包含若干个工程,甚至可以添加任何你想添加的文件。workspace提供了工程和工程里面的target之间隐式和显式依赖
关系&#x