一、一个项目的目录结构如何组织


    iOS项目的工程、代码如何管理,每个公司都有不同的一套,甚至每个人都有不同的见解和习惯。那么新手刚开始做项目无从下手,不知道如何搭建这个架子如何办呢?别怕,其实我们可以分析一下我们的工程中一般都有哪些文件,归纳总结一下还是有一些共性,那么如何组织也就清晰了很多。


    一般的iOS项目能用到哪些东西?一般情况为项目分为几个模块:


    1、Tabbar并行组织几个主控制器


    2、各个控制器为TableViewController,cell跳转下一级Controller,以此类推。。。


    3、第三方库:AFNetworking、ASIHTTPRequest、Mantle、SDWebImage等第三方库


    4、基础Controller、基础Cell、基础Model等


    5、宏定义,涉及通知、宏定义方法等等


    6、常用的category


    7、常用方法的封装


    8、资源文件


    9、支撑文件、文档


    。。。差不多就这些东西吧。



好吧,每个公司的模块、功能不外乎这些,都有很大的共性。现在我根据自己的习惯和一些见识,总结出了我的工程目录结构,仅供大家参考。


    一个项目大概分为三部分:资源文件(Resources)、代码(Sources)、支撑文件(Supporting Files)


    Resource部分分为:


        1、通用的资源,如cell右边的图案、共用的资源图片等,一般命名为common


        2、各模块独立的资源,分目录构建存放


    Source部分是整个项目最最终的地方,而且内容比较复杂繁多。我们需要重点组织这部分的结构。


        1、程序入口AppDelegate


        2、第三方的开发代码、框架:Vendors


        3、宏定义目录Macro



        4、自己封装的常用的代码:Common



                coommon下可细分Category、BaseController、BaseView、Helper、Config等。


        5、真正我们写的代码:Custom目录下分模块名字,模块名下包含MVC子目录


    Supporting Files下可放项目相关的东西,如app.plist、Document目录存放文档等。