这个是我们团队一直推崇而且现在正在使用的架构
android10/Android-CleanArchitecture · GitHub
说说用下来的优缺点,如有纰漏,还请指正。
无论从架构还是代码上看,分层都是三层:视图层(Presentation Layer)、控制层(Domain Layer)、数据流层(Data Layer)。
层级之间通过添加接口层作为分隔实现解耦。
简单来说,优点有以下
1层次分明,各层级之间都不管对方如何实现,只关注结果;
2在视图层(Presentation Layer)使用MVP架构,使原本臃肿的Activity(或Fragment)变得简单,其处理方法都交给了Presenter。
3易于做测试,只要基于每个模块单独做好单元测试就能确保整体的稳定性。
4易于快速迭代,基于代码的低耦合,只需在业务逻辑上增加接口,然后在相应的层级分别实现即可,丝毫不影响其他功能。
Android应用开发架构的话,现在比就流行的分为以下三种:
MVC(Model-View-Controller),这是最常见的软件架构,它分为三个部分
视图(View):用户界面
控制器(Controller):业务逻辑
模型(Model):数据保存
View 传送指令到 Controller,Controller 完成业务逻辑后,要求 Model 改变状态Model 将新的数据发送到 View,用户得到反馈。
2 MVP,MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。
各部分之间的通信,都是双向的。
View 与 Model 不发生联系,都通过 Presenter 传递。
View 非常薄,不部署任何业务逻辑,称为"被动视图"(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。
3 MVVM ,MVVM 模式将 Presenter 改名为 ViewModel,基本上与 MVP 模式完全 一致。唯一的区别是,它采用双向绑定(data-binding):View的变动,自动反映在 ViewModel,反之亦然。Angular 和 Ember 都采用这种模式。
以上就是关于Android 开发有什么好的架构么全部的内容,包括:Android 开发有什么好的架构么、Android 开发有什么好的架构么、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)