三大设计模式
- MVC(model view controller):
》model主要业务逻辑块,view用于显示(android主要由activity完成),control连接model和view的桥梁(主要包括一些接口);
》model与view分工还不够彻底,view里面含有一些业务逻辑;
- MVP(model view presenter):
》MVC的衍生模式,显示与逻辑区分更加彻底,presenter对应controller
- MVVM(model view viewModel):
》与MVP基本基本一样,唯一多了一点——view发生改变后,model也会发生对应的改变;
讨论
无论选择什么模式,其目的都是一样——降低程序耦合,进而便于修改,维护及升级。我的建议是:使用第三API等,最好以import module的形式引入,这样我们对对应API升级,或者必须有所改动(如API方应对android新出版本有了新的调整时)就非常容易,而不影响其他功能模块;当然,对于自己开发的一些常用及共用的功能,我们也可以归纳到一个module里。