【个人理解,有不正确的地方还请指正】
1、MVC:
1.1 定义:MVC(Model—View—Controller),M--逻辑模型,V--试图模型,C--控制器。典型的观察者设计模式,M和V代码分离,使用Controller则是确保了Model和View保持同步更新。
1.2 优势:MVC是将代码中的逻辑层和界面层分开,在团队开发中不同的开发人员可以按照不同的分工对不同的模块进行开发。
1.3 在Android开发中的具体体现:
1)Model(模型层):对网络、数据库以及计算逻辑等相关耗时操作都放在该层;
2)View(视图层):在Android中具体体现就是布局以及各种控件的绘制描述,以XML的形式存在或在代码中自定义布局/控件的类或包包;
3)Controller(控制层):Activity和Fragment就存放在该层(相关Adapter封装也放在该层),若果涉及到相关的业务逻辑处理直接调用Model层中方法,将耗时操作都放在Model层中做。
2、MVP: