在 Android Studio 项目中拥有多个模块是否比只有一个大型app模块更有利?
我大致了解Android 模块和SOLID的优势,所以我的重点是特别考虑构建性能。由于 gradle 可以进行增量构建,如果只有一个模块发生变化,其他模块不需要处理吗?
这是明显的还是有相当多的开销?
在 Android Studio 项目中拥有多个模块是否比只有一个大型app模块更有利?
我大致了解Android 模块和SOLID的优势,所以我的重点是特别考虑构建性能。由于 gradle 可以进行增量构建,如果只有一个模块发生变化,其他模块不需要处理吗?
这是明显的还是有相当多的开销?
拥有多个模块而不是创建单个大型应用程序模块具有很大的优势。以下是要点:
昨天有一篇关于 Medium 的文章,正好解决了我的问题:
tl;博士:
首先也是最重要的,假设是正确的,模块化项目可以显着加快构建过程,但并非适用于所有配置。
其次,如果以错误的方式进行拆分,那么构建时间将大大增加,因为 Gradle 会构建库模块的发布版本和调试版本。
第三,对于具有多个模块的项目,以测试驱动的方式工作要容易得多,因为构建一个小的库模块比整个项目要快得多。
第四,并行执行许多事情会减慢构建速度。所以拥有更强大的硬件是个好主意。
您可以在下面找到本文中描述的所有实验的结果
在 Google I/O '17 上发表:https ://youtu.be/Hx_rwS1NTiI?t=23m17s