1 mvc(model-controller-view)
把业务剥离到controller中,让view专注于现实ui。但是view和model并没有解耦合,controller和view有可能由同一个对象承担,比如Android的Activity.
2. mvp (model-view-presenter)
实现了view和model的解耦。提高了系统的扩展性,可测试性,代码可读性。
presenter: view和model的桥梁。将view和model解耦,同时将业务从view中释放出来。
view: 用户界面。含有一个presenter接口的引用。
model: 数据的存取。 提供了数据库读写和网络操作读写数据的角色。