Android学习——MVP/MVC

    MVC 模式代表 Model-View-Controller 模式。简单的来说就是通过Controller去操作Model层,同时去更新View层显示。另外View层也会与Model层有交互。
    对于Android来说,其中的View,对应的是各种Layout布局文件;Controller对应的是Activity;Model就是各种数据及其封装了。

    MVP代表 Model-View-Presenter 模式,其中:

View 主要负责界面的显示及跟数据无关的逻辑,比如设置控件的点击事件等
Presenter 主要负责View与Model的交互
Model 数据部分

    在MVC里,View可以直接访问Model,从而View里会包含Model信息,不可避免的还要包括一些业务逻辑。所以当交互比较复杂,view又比较多变的情况下,更改view比较困难,view中的业务逻辑是无法复用的。
    与MVC重大区别:在MVP中View并不直接使用Model,它们通信是通过Presenter来进行的,而MVC中View会从Model中直接读取数据而不是Controller。该模式下开发起来结构清晰易懂,耦合度低,但是代码量文件数量会变大。

你可能感兴趣的:(Android学习)