美文网首页android开发AndroidAndroid 轮子
[译]Android DataBinding:再见Present

[译]Android DataBinding:再见Present

作者: asce1885 | 来源:发表于2015-07-26 22:40 被阅读23667次

    @author ASCE1885的 Github 简书 微博 CSDN
    原文链接

    最近一段时间MVP模式已经成为Android应用开发UI层架构设计的主流趋势。类似TED MOSBYnucleusmortar之类的框架都引入了Presenters来帮助我们搭建简洁的app架构。它们也(在不同的程度上)帮助我们处理Android平台上臭名昭著的设备旋转和状态持久化等问题。MVP模式也有助于隔离样板代码,虽然这并不是MVP模式的设计初衷。

    在Google I/O 2015上,伴随着Android M预览版发布的Data Binding兼容函数库改变了这一切。

    根据维基百科上关于MVP的词条描述,Presenter作用如下:

    Presenter作用于model和view,它从仓库(Model)中获取数据,并格式化后让view进行显示。

    Data Binding框架将会接管Presenter的主要职责(作用于model和view上),Presenter的其他剩余职责(从仓库中获取数据并进行格式化处理)则由ViewModel(一个增强版的Model)接管。ViewModel是一个独立的Java类,它的唯一职责是表示一个View后面的数据。它可以合并来自多个数据源(Models)的数据,并将这些数据加工后用于展示。我之前写过一篇关于ViewModel的短文,讲述了它与Data Model或者Transport Model之间的区别。

    我们今天要讲述的架构是MVVM(Model-View-ViewModel),它最初是在2005年(不要吓到哦)由微软提出的一个被证明可用的概念。下面我将举例说明从MVP到MVVM的改变,容我盗用下Hanne Dorfmann在他介绍TED MOSBY框架的文章中的插图。

    相关文章

      网友评论

      • 张旭童:mvvm 怎么没有M 层 啊,只有view 和 viewModle ?
      • 96e6bd5ae684:mvvm 怎么没有M 层 啊,只有view 和 viewModle ?
        沐风大神:@96e6bd5ae684 ...
      • 我书读的少你可别骗我:博主翻译的不错。可我总觉得在简书这个平台写技术文章不太好,贴出来的代码阅读性非常差。个人意见,不喜勿喷
        尛坏蛋:@ZefanXie 这样看代码脑袋都大了
        asce1885:@我书读的少你可别骗我 如果想看代码高亮效果可以点击文章开头我的CSDN博客链接,一般都会同步更新的。
        ZefanXie:@我书读的少你可别骗我 还好不,只是没有高亮,除非自己搭博客,不然国内很少有博客的用户体验能和简书比。

      本文标题:[译]Android DataBinding:再见Present

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