架构设计

2021-04-20  本文已影响0人  bytebytebyte
1.架构是什么
类之间的关系、模块之间的关系、客户端与服务端的关系。

2.MVC   v赋值m发生在c
m ←→ c ←→ v
优点:view、model可以重复利用。都不知道对方的存在的,即view内部没有model,赋值发生在C,view的控件需要暴露出来.
新闻model、商品model可以直接赋值到同一个view上,因为view没发生变化所以可以重复利用。
同理同一个数据新闻model可以直接赋值到不同的view上,因为model没发生变化所以可以重复利用。
缺点:controller臃肿

3.MVC变种  v赋值m发生在v
c ←→ v
↓        ↓
     m
优点:瘦身了
缺点: v依赖m

4.MVP presenter主持人的意思
m ←→ p ←→ v
什么是mpv? 是把业务逻辑全部移到了p中。
c强引用p,
p弱应用c,在c的初始化方法里添加v并设置点击事件,然后加载数据,用m去赋值。

4.MVVM 
是把业务逻辑全部移到了vm中;

一个c可能有多个vm,c强引用vm;
vm弱应用c,将model的属性如name等设置在vm上,在vm的初始化方法里添加v并设置点击事,然后加载数据,用m去赋值。
v弱引用vm,在setViewModel中观察vm的model属性如name等,把新值赋值在控件上。

5.VIPER,CDD跟前边3个差不多。

6.三层架构
界面层(MVC、MVP、MVVM)  -> tableview
业务层                                      -> 封装的数据层,先加载本地数据再加载网络数据——管理类
数据层                                      -> 封装的本地数据库、AFN——工具类

界面层(MVC、MVP、MVVM)  -> tableview
业务层                                      -> 封装的数据层,先加载本地数据再加载网络数据——管理类
网络层                                      -> 封装的AFN         ——工具类
数据层                                      -> 封装的本地数据库——工具类

7.设计模式:类之间的关系、设计经验,是编程思想,分三大类:

创建型模式:对象实例化模式,用于解耦对象实例化过程
单例模式、工厂方法模式

结构性模式:把类或对象结合在一起形成一个更大的结构
代理模式、适配器模式、组合模式、装饰模式

行为型模式:类或对象之间如何交互,及划分责任和算法
观察者模式、命令模式、责任链模式

上一篇下一篇

猜你喜欢

热点阅读