前言
鉴于个人文笔有限,上篇博文Android组件化文章写的太烂 Android组件化、模块化开发图文以及解释做的太过粗糙。
本篇咱们根据图表对比,优缺点,讲述具体的实现步骤以及gradle自动化脚本的书写等。
组件化案例视频代码传送门:https://www.jikexueyuan.com/zhiye/course/84.html?type=18
为什么组件化
随着移动互联网的发展,或许中小型项目还可以用单工程+MVC/MVP/MVVM的架构来完成,但当项目到了一定程度之后,编译时间 原来越长,测试或者开发任何一个模块功能都需要整个项目重启运行。
常规单工程+MVC/MVP/MVVM项目:
乍一看,这样的结构只要咱们模块分层明确,是不存在大问题的,但是随着业务的快速迭代,面临以下问题:
1.需求疯狂变化,上周刚讨论出一套方案,你花了两天搞定,这个时候PM告诉你,这个咱们修改或者不要了,是否想抓狂呢。
2.所有业务都在一个项目,不管基于什么原因,有时候咱们为了快速完成一个功能,或多或少存在耦合,任何改动都可能显的比较吃力,解决了一个BUG又出现另外一个BUG。
3.团队人数达到一定程度后,并行开发过程中,如果某个成员不小心犯错并且提交了代码,可能导致项目暂时无法运行,不得不停下来协同查找问题,严重影响开发效率
4.业务越来越多,项目越来越大,编译运行一次要10秒…