梦之鬼索MVP模式在Android中的设计和实现

想必大家都知道MVCMVPMVVM。今天就来探讨一下MVP在安卓中的设计和实现。

首先谈一个需求。

你的boss说,小明去给我写一个程序很简单我提供Person ID 你给我拿出Person的姓名和性别之类的信息。小明忙问boss“老大这个ID和Person是如何关联的是从服务器接口取还是从本地数据库取还是有什么其他规则boss说哦等我接个电话,像是老婆打来的。小明呆呆的等着boss接完电话,boss看起来没那么开心,boss说如何关联id和person吗个问题业务那边还没确定下来,你先去吧功能实现,怎么取到时候我再告诉你。

小明心中一万个XX马飞过,需求没搞清就让我写代码

终于放出来大招。直接干掉了boss。boss你不是很屌吗何获取person信息还不知道只要实现iPersonPresenter接口的一切逻辑我都可以。只需新建一个新的PersonPerson实现类。然后修改一处代码,完成依赖注入。那么无论boss如何无理小明只需简单的修改程序代码依旧美丽。

项目结构如图。

梦之鬼索MVP模式在Android中的设计和实现

小明很开心,终于学会了MVP设计模式,以后再也不怕改代码了。不过有人要吐槽了,你这样多建立了这么多类不是很复杂吗一个Activity全部解决所有问题,我想说Code is Art这不仅仅是科学也是艺术,有人在问接口的意义,我曾看见过有个最简单的说法。你的手机充电器问什么要有Usb接口,为的就是所有有USB接口的设备都可以与你的手机连接,这也应征了刚刚说过世间万物皆对象,没错给我一个程序我能抽象整个世界。手机接口也是就我们程序的接口,只要符合这个接口那么都可以来使用。

项目github源代码https://github.com/AndroidMsky/MVPtest1

欢迎加安卓开发交流群:308372687


声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年7月16日
下一篇 2016年7月17日

相关推荐