美文网首页
Android官方MVP架构学习分析-2017-01-14

Android官方MVP架构学习分析-2017-01-14

作者: 自然like | 来源:发表于2017-07-23 18:59 被阅读24次

    每次看MVC架构的项目时,都会在比较臃肿的Activity、Fragment里面阅读,对一个界面的逻辑理解并不是那么的清晰。当然,Android的MVC架构,很多都不是特别的清晰,因为Activity作为控制器,却做了很多视图的处理,或者把Activity理解成为视图,却拥有着大量的控制器逻辑。MVP架构会在这个MVC基础上锦上添花。虽然会添加很多接口类,但清晰度上面提高了,后面通过泛型应该也可以简约更多的代码。

    Android官方MVP架构:

    https://github.com/googlesamples/android-architecture
    

    学习后分析了一下,先上图


    image

    Activity作为MVP的主控制,初始化Precenter(P)、Fragment(V)、TasksRepository(M),View层响应UI事件,并通过Precenter层去获取数据,Precenter会通过调用Model层去获取内存中缓存的、本地数据库的、网络服务器的数据,最终通过回调方法响应数据到View层显示。

    在看看官网demo的目录结构:

    image

    从契约类Contract可以看出,Precenter跟View层的接口都比较清晰的查看,而Model层则是通过实现TasksDataSource接口,达到数据获取、网络数据获取、本地数据获取,都是实现相同的接口。因此三者具体的交互应该是这样的


    image

    相关文章

      网友评论

          本文标题:Android官方MVP架构学习分析-2017-01-14

          本文链接:https://www.haomeiwen.com/subject/ombmkxtx.html