架构

作者: ModestStorm | 来源:发表于2022-05-31 15:48 被阅读0次

MVC:对android来说 activity几乎承担了view层和controller层两种角色,并且和model层耦合严重,业务逻辑和ui逻辑耦合严重,维护起来很麻烦,

MVP:MVC演变而来,MVP模式下的activity只承担了view层的角色,controller的角色完全由presenter负责,view层和presenter层的通信通过接口实现,所以View和Presenter之间不存在耦合问题,view层与model也是完全解耦了。相对于MVC来说,MVP后期更易于维护。中大型项目,最好配合模块化,将粒度分的更细更清晰,业务之间职责明确。但mvp容易造成接口管理的困难,类的爆炸,代码量的增加。

MVVM:Model:同上。View:同上。ViewModel:视图模型,通过框架实现View层和Model层的双向绑定。优点:a.View和Model双向绑定,一方的改变都会影响另一方,开发者不用再去手动修改UI的数据。b.不需要findViewById也不需要butterknife,不需要拿到具体的View去设置数据绑定监听器等等,Android目前的双向绑定是由databinding实现的。c.View和Model的双向绑定是支持生命周期检测的,不会担心页面销毁了还有回调发生,这个由lifeCycle完成。d.不会像MVC一样导致Activity中代码量巨大,也不会像MVP一样出现大量的View和Presenter接口,项目结构更加低耦合。缺点:由于数据和视图的双向绑定,导致出现问题时不好定位来源,有可能数据问题导致,也有可能业务逻辑中对视图属性的修改导致。

相关文章

  • 系统架构基本概要

    架构原理图 应用架构 业务架构 系统架构 数据架构 技术架构

  • 数据库事务、Redis缓存

    项目的架构(业务架构、技术架构、物理架构) 单机架构 ---> 多机架构 ---> 读写分离 ---> 集群架构 ...

  • 大型网站系统架构图

    安全架构 核心架构要素 高性能架构 高可用架构 伸缩性架构 可拓展性架构 * 前言 前端架构 应用层架构 安全架构...

  • 大型网站架构笔记

    大型网站架构 网站架构包括:前端架构+应用层架构+服务层架构+存储层架构+后台架构+数据中心机房架构+安全架构+数...

  • 架构设计的5视图方法

    架构设计的5视图方法: 逻辑架构,开发架构、运行架构、物理架构、数据架构 1.逻辑架构 逻辑架构关注功能,不仅包括...

  • 架构的一些记录

    架构可细分为业务架构、应用架构、技术架构,业务架构是战略,应用架构是战术,技术架构是装备。其中应用架构承上启下,一...

  • 软件技术架构演变历史

    传统架构 传统架构– 软件架构– 图一 传统架构– 硬件架构– 图二(仅供参考) 传统架构– 企业组织架构– 图三...

  • 中小型创业公司,参考这篇文章去组建技术团队

    人员架构 工具架构 流程架构 代码层架构

  • 非常值得看的文章集合,会持续更新

    1.runloop 2.架构1、架构2、架构3、架构4、架构5

  • 架构设计的五视图理论

    五视图分别是: 逻辑架构、开发架构、运行架构、物理架构、数据架构。 逻辑架构 逻辑架构着重考虑功能需求,系统应当向...

网友评论

      本文标题:架构

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