美文网首页
Android组件化开发

Android组件化开发

作者: Android开发技术总结 | 来源:发表于2019-05-12 17:32 被阅读0次

    1. 什么是组件化开发呢?

    在项目开发中,会将公用的代码提取出来制作基础库Base Module,将某些单独的功能封装到Library module中,更具业务来划分module。

    组件:指的是单一的功能组件,如视频组件(VideoSDK)、支付组件(PaySDK)、路由组件(Router)等,每个组件都能单独抽出来制作成SDK。

    模块:指的是业务模块(LiveModule)、首页模块(HomeModule)、即时通信模块(IMModule)等。模块相对于组件来说粒度更大,模块可能包含多种不同的组件。

    1.1 组件化开发有什么好处?

    1)避免重复造轮子,可以节省开发和维护的成本。

    2)可以通过组件和模块为业务基准合理地安排人力,提高开发效率。

    3)不同的项目可以公用一个组件或模块,确保整体技术方案的一致性。

    4)为未来插件化共用一套底层模型做准备。

    1.2 模块化开发的好处?

    1)业务模块解耦,业务移植更加简单。

    2)多团队根据业务内容进行并行开发和测试。

    3)单个业务可以单独编译打包,加快编译速度。

    4)多个app共用模块,降低了研发和维护的成本。

      组件化和模块化都是为了代码重用和业务解耦。区别在于模块化是业务导向,组件化是功能导向。

      项目体积越来越大后,必定会有超过65536的一天,要么选择multidex的方式分包解决,要么使用插件化的方式来完成项目。

      组件化和模块化的划分可以更好地为项目插件化开路,插件化的模块化发布和正常发布有着非常大的差异,已经脱离了组件化和模块化的构建机制,插件化拥有更高效的业务解耦。

    1.1.3 基础组件架构介绍

    分为应用层、组件层和基础层。

    1)基础层:包含一些基础库和对基础库的封装,包括图片加载、网络加载、数据存储等。

    2)组件层:包含一些简单的业务,比如登陆、数据观看、图片浏览等。

    3)应用层用于统筹全部组件,并输出生成app。

    1.2.1 依赖

      Android Studio 独有设计—— module依赖。

      module 的依赖包括对第三方库的依赖,也包含对其他module的依赖。通过依赖我们可以访问第三方和其他被依赖Module的代码和资源。

    三种基本的依赖方式:

    1)Jar dependency:通过Gradle配置引入lib文件夹中的所有.jar后缀的文件,还能引用

    相关文章

      网友评论

          本文标题:Android组件化开发

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