×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

APP开发公司关于Android项目架构模式详解

文章编辑:网站建设 文章来源:APP开发 浏览量:

  深圳APP开发公司关于APP开发公司关于Android项目架构模式结合多年APP开发经验对其进行分类整理,我们总计将其分为MVC架构、MVP架构、MVVM架构、MVP+VM架构,下面博纳网络将逐一对其所起的作用进行分享:
1.APP开发关于MVC架构
  MVC(Model-View-Controller)即模型-视图-控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。View是用户看到并与之交互的界面,Android系统中主要指
Activity或Fragment,View从Model中取得它需要显示的数据和状态;Model主要提供数据存取功能;Controller处理业务逻辑,Android系统中也主要指Activity或Fragment。如图10-1所示是一个标准的MVC框架图。图10-1在MVC里,View是可以直接访问Model的,View里会包含Model信息,不可避免的还要包括一些业务逻辑。在Android开发中,Activity和Fragment往往既是V又是C,从而导致代码极其臃肿。
2.APP开发关于MVP架构
  MVP(Model-View-Presenter)即模型-视图-表示器。在MVP中View并不直接和Model交互,它们之间的通信是通过Presenter(相当于MVC中的Controller)来实现的。在MVP模式里,View主要实现界面显示和处理用户操作,如点击或输入等功能。除此之外就不应该有更多的内容,绝不容许直接访问Model,这就是与MVC很大的不同之处。View是用户看到并与之交互的界面,Android系统中主要指Activity或Fragment,其含有一个Presenter成员变量。通常View需要实现一个逻辑接口,将View上的操作转给Presenter实现,最后Presenter调用View逻辑接口将从Model获取的数据返回给View。Presenter主要作为沟通View和Model的桥梁,它承接View传来的用户需求,完成一些业务逻辑的处理,并将从Model层获取的数据返回给View层,使得View和Model间没有耦合,也将业务逻辑从View层抽离出来;Model主要提供数据存取功能,Presenter通过Model层存储和获取数据。
如图10-2所示是MVP框架图。图10-2在MVP中,所有的逻辑都在Presenter层实现,这层的负担较重,而且相比MVC会多出许多接口方法。
3.APP开发关于MVVM架构
  MVVM(Model-View-ViewModel)的框架图如图10-3所示。
ViewModel大致上就相当于MVP的Presenter和MVC的Controller了,而View与ViewModel间是直接交互,用数据“绑定”的形式实现数据双向同步。在开发AndroidAPP时,可以使用Android系统提供的DataBinding技术实现数据绑定。
4.APP开发关于MVP+VM架构
  MVVM与MVP相比,优化了数据频繁更新的解决方案,但某种程度上又把View和Model耦合在了一起。在实际开发中,纯粹利用DataBinding技术并使用MVVM架构的情况不多,往往是把MVP架构和DataBinding技术一起使用,具体框架图如图10-4所示。
好了,APP开发公司本文关于“
Android项目架构模式详解”知识就分享到这里,希望能给您帮助,谢谢关注,博纳网络编辑整理。
 
 

当前文章链接:/construction/appkaifa/2368.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。