工程文件结构(括号中的文字在工程中已去掉):
主要分四类
Classes:包含和业务相关的功能文件模块(主业务模块、其余共用业务模块、业务网络请求、业务处理组件、公共组件)
Expand:包含和业务无关的相关功能文件模块(分类、数据库、宏、网络、Tools)
Other:包含程序自动生成的相关文件(AppDelegate、main.m)
Resource:包含项目中所有的资源文件(图片、音频、plist等)
Classes
MainBusinessModules(主业务模块):
目前分为 三个模块,后续开发过程中如果有新功能和这三个功能关联密切,则按MVC样式建立文件夹放在其下
OtherBusinessModules(其他业务模块):
和三个主业务模块关联不紧密或为三个模块有共用部分的放在OtherBusinessModules文件夹中,例:登录模块、二维码扫描
NetworkRequest(业务网络请求):
尽量做到每个业务功能对应一个Request,相关文件放置NetworkRequest文件夹下,例:LoginRequest
BasicViewController(基础VC):
包含一些基础业务共用VC,例:BasicViewController、WebViewController
BusinessComponents(业务组件):
包含业务模型数据处理或一些控制统一跳转或跳转逻辑的RouterModel
PublicComponents(公共组件):
包含工程内一些通用或可扩展复用的封装控件,如:TKAlert、CustomTextFieldView
Expand:
本文件夹下的所有文件都不设计项目中的业务功能,方便以后抽离复用
Category(分类):
包含一些功能扩展的Category,不包含业务功能
DataBase(数据库):
包含数据库相关配置文件以及库文件
Macros(宏):
包含宏文件
NXNetWork(网络):
包含根据自身需求对AFNWorking二次封装的网络请求类文件
Pct:包含Pch文件
Tools(工具):
根据自身需求封装的工具类,方便统一使用管理