- 一直以来对MVC、MVP、MVVP三种理念理解不是特别深刻,今天主要讲讲我对三种设计模式的理解和它们的适用场合;
1.MVC
MVC模式最初生根于服务器端的Web开发,后来渐渐能够胜任客户端的Web开发,能够满足其复杂性和丰富性;
从实现上来说,主要可以分为后端MVC和前端MVC两种;这两种MVC的不同点如下:
可以看到,前端的MVC其实是为了解决前端复杂JS模块化的问题,从后端MVC的V分出来的MVC,与后端MVC并没有直接的关系。前端的MVC中,M占的比例很低,只指代数据。而后端V的比例很低,只有模版的部分。
接下来讲讲移动端的MVC设计模式
MVC是Model-View-Controller的缩写,它将应用程序划分为三个部分:
Model: 模型(用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法)
View: 视图(是指显示数据并且和用户交互的层;在安卓中,它们可以是一个Activity,一个Fragment,一个android.view.View或者是一个Dialog;)
Controller: 控制器(M和V之间的连接器,用于控制应用程序的流程,及页面的业务逻辑)
1.1MVC特点
MVC模式的特点在于实现关注点分离,即应用程序中的数据模型与业务和展示逻辑解耦。在客户端web开发中,就是将模型(M-数据、操作数据)、视图(V-显示数据的HTML元素)之间实现代码分离,松散耦合,使之成为一个更容易开发、维护和测试的客户端应用程序。
- View 传送指令(事件)到 Controller ;
- Contro