Android App整体架构

作者: 大于于 | 来源:发表于2020-05-23 12:43 被阅读0次
    App架构.png

    如上图所示:整个app的架构分为了4层

    • 1、最上面是App壳,用于加载各个业务模块
    • 2、业务层:包含了现有的原生代码写的业务,以及后期使用RN接入新的业务模块
    • 3、服务层:包含了基础服务,UI组件和功能模块,以及第三方平台服务
      另外:页面路由和事件订阅会贯穿业务层和服务层
    • 4、基础库层:集中依赖1,2,3层普遍会使用到的基础库

    基于目前单兵作战的现状,以及功能的快速变更,业务层没有进一步拆分,拆的过于细反而会影响开发效率,但随着业务的不断复杂增多,以及用户数量的增加,为了降低用户的更新成本,会加入热修复和插件化的功能,进一步拆分业务层,独立出业务组件发布到云效平台。

    下图为具体各个模块对应的module分布,实线框为真实的module
    App Moudle分布.png

    业务层采用MVVM的开发模式:如下图所示:
    View:负责UI显示,用户交互事件处理,
    Model:数据模型,本地数据或者网络数据获取;
    ViewModel:负责对Model和View的通信桥梁。

    目前项目中没有用到数据库--Room,但已经预留了接口,Repository负责对VM层,具体数据来源VM不需要关心

    App模块交互.png

    除了基础服务层 和 业务层 两个module,其他module 都已经抽离并发布到云效-如下图所示:

    云效的module.png

    下图主要展示了基础服务层(app-base)和业务层(app)现有的代码目录结构,这些部分的代码会时常变动和新增,稳定之后会继续剥离,发布到云效仓库中。

    App文件目录.png

    目录不建议太要深,3级以内为最佳。

    相关文章

      网友评论

        本文标题:Android App整体架构

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