架构分类
首先明确一点,MVC、MVP、MVVM是页面架构,把一个页面,分成几个部分管理,然后这几个部分进行交互
此外还有项目架构,比如组件化;还有模块架构,负责模块内部的解耦、通信机制
MVC
其思想是,拆分数据,拆分UI,同时设计一个中介层进行交互
MVP
和MVC最大的不同是,V和M不能直接交互
此外,你可以用2种方式进行思考:
1、V是事件的出发点
当你处理UI时,遇到了需要处理事件的时候,这个时候全权把任务交给P去分发
2、P是事件的出发点
事件流在P中进行,事件从P开始,然后V暴露刷新UI的口,M暴露得到数据的口,P写逻辑决定调用两者API的组合
要明白这2者的区别,否则和同事协同的时候,别人很可能对你的MVP提出质疑
这2个MVP优劣上并无太大区别
建议组内人怎么用,那就怎么用
MVVM
<