最主要的目的在于减少代码量,提高复用度,降低耦合度,方便后期修改。结构清晰,方便测试。
MVVM:在MVC的基础上,将部分业务逻辑抽出,放在一个ViewModel里面。避免某一个类中的代码过于复杂,后期难以维护,由其是ViewController里面,同时提高复用度。
- Define —— 用于存放些宏(#define)。
- Models —— 用于存放模型类。如:BaseModel.h,CollectionModel.h
- NetworkManager —— 用于存放网络请求类
- Resources —— 用于存放资源,例如xib,storyboard,图片,plist,音频,视频。
- Util —— 通用的、与业务无关的,可以独立出来,可供其他项目使用的分类Category和扩展或者工具类
- Tools,与某些业务有关,通用性只限于某几个业务类之间,比如数据正则匹配等。能复用的视图Views
- Vendors —— 用于存放第三方框架或者第三方SDK文件
- View —— 用于存放视图类
- ViewControllers —— 用于存放视图控制器类,也就是View层。存放一些界面简单的ViewController。之后就是按照业务逻辑创建文件夹。
- ViewModel —— 用于存放视图模型类,及处理 View 和 Model 之间的业务逻辑和网络请求。可以放一些manager管理类,处理一些业务逻辑。
- Config:就是工程的配置文件,用于放置程序的一些配置,UI高度,方便统一修改。.pch .h
- 业务逻辑类