iOS 项目目录结构

iOS 项目的目录结构能看出你的开发经验

最近有师弟面试iOS开发,他很吃惊地跟我说,面试官居然问他怎么分目录结构的,还具体问每一个子目录的文件名。程序员

目录结构确实很是重要,面试官这么问他,无疑是想窥探他的开发经验。清晰的目录结构,可以让人一眼明白相应的业务和职能,这也能体现开发者的经验和架构水平。面试

目前,我接触过的项目中,比较常规的两种结构:
1.主目录按照业务分类,内目录按照模块分类(主目录按照MVC架构分类,内部根据项目模块分类)架构

优势:相对比较快定位对应的业务。
缺点:模块相关类太过度散,须要来回切换寻找文件,不方便开发。ide

2.主目录按照模块分类,内目录按照业务分类翻译

优势:对模块的类集中化,方便管理与开发。
缺点:当几个模块共用一些类时,不太好归类。code

假设对简书iOS应用目录分类(非官方):对象

  • 1.主目录按照业务分类,内目录按照模块分类
  • 2.主目录按照模块分类,内目录按照业务分类

注意: 以上两种分类不是绝对的,具体还得按照业务需求去归类。若是公司多项目的话(指外包公司,哈~),能够尝试按照本身的逻辑去归类,或能够多观察下身边大牛搭建的项目,会吸收到其中的奥秘。代码也同样,多看看大神写的,甚至能够直接模仿大神的代码风格,别人也会把你当作大神!
ps:有评论说,目录备注中文名感受就lo了。确实开发中,一些很是有经验的程序员,不会这么干,甚至在代码中也不多中文注释。但我的以为,普通或中高级工程师真滴颇有必要多些注释,因为经验少,变量和方法名可能都命名很差,不少用googl翻译直译,甚至本身到审查代码时都不能直译出来。多谢注释好处就是就算你看不懂我写的代码,也必定能让你知道这是干什么滴(万不得己时,哈~),方便本身也方便别人!最后,目录没有真正的好坏之分,只要适用于本身的业务,就是好的目录!blog

相关文章
相关标签/搜索