通过应用软件架构模式来开发安卓应用,总是被开发者所青睐。架构模式为项目文件提供了模块化,并确保所有的代码在单元测试中得到覆盖。它使开发人员很容易维护软件,并在未来扩展应用程序的功能。MVC(模型-视图-控制器)和MVVM(模型-视图-视图模型)是开发者中最流行的两种安卓架构。
MVC模式建议将代码分割成3个部分。在创建应用程序的类/文件时,开发者必须将其归入以下三层之一。
MVVM模式与MVP(Model-View-Presenter)设计模式有一些相似之处,因为Presenter的角色是由ViewModel来扮演的。然而,MVVM已经解决了MVP模式的缺点。它建议将数据表现逻辑(视图或用户界面)与应用程序的核心业务逻辑部分分开。MVVM的独立代码层是。
MVC和MVVM设计模式的区别
MVC(Model View Controller) | MVVM(Model View ViewModel) |
---|---|
最古老的安卓应用架构。 | 业界公认的应用程序的架构模式。 |
用户输入是由控制器处理的。 | 视图接受来自用户的输入并作为应用程序的入口。 |
控制器和视图以一对多的关系存在。一个控制器可以根据需要的操作选择不同的视图。 | 多个视图可以被映射到单个ViewModel上,因此,视图和ViewModel之间存在一对多的关系。 |
视图对控制器一无所知。 | 视图有对ViewModel的引用。 |
MVC架构对Android APIs的依赖性很高。 | 对Android APIs的依赖性较低或没有依赖性。 |
由于代码层是紧密结合的,因此很难对应用程序的功能进行改变和修改。 | 容易对应用进行修改。但是,如果数据绑定逻辑太复杂,调试应用程序就会有点困难。 |
对单元测试的支持有限。 | 单元测试能力在这个架构中是最高的。 |
MVC不遵循模块化和单一责任原则。 | MVVM遵循模块化和单一责任原则。 |
上一篇:POS和EPOS的区别