iOS架构设计
- 讲述MVC 、 MVVM 、MVP 以及你在项目里面怎么写的
- 你自己用过哪些设计模式
- 一般开始做一个项目 你的架构是怎么思考的
解释:
架构(Architecture)
软件开发中的设计方案
类与类之间的关系、模块与模块之间的关系、客户端与服务端的关系
经常听到的架构名词
MVC、MVP、MVVM、VIPER、CDD
三层架构、四层架构
…
MVC-Apple版本
优点:
View、Model可以重复利用、可以独立使用
缺点:
Controller的代码过于臃肿
MVC-变种
优点:
对Controller进行瘦身、将View内部的细节封装起来,外界不知道内部的具体实现
缺点:
view依赖于Model
MVP
MVVM
多层架构
对代码的业务进行层级区分
- 界面层–展示的页面
- 业务层–加载数据的类似服务
- 网络层–通过网络请求
- 本地数据层–本地数据库
设计模式
设计模式:
- 是一套被反复使用、代码设计经验的总结
- 使用设计模式的好处是:可重用代码、让代码更容易的被理解、保证代码的可靠性
- 一般与编程语言无关、是一套比较成熟的变成思想
设计模式可以被分为三大类:
- 创建型模式:对象实例化模式、用于解耦对象的实例化过程(单例、工厂、等等)
- 结构型模式:把类或者对象组合在一起形成一个更大的结构(代理、适配器、组合、装饰、等等)
- 行为型模式:类或者对象之间如何交互、及划分责任和算法(观察者、命令模式、责任链模式等等)