当前位置:  开发笔记 > Android > 正文

(Dis-)在Android Studio项目中拥有多个模块的优势?

如何解决《(Dis-)在AndroidStudio项目中拥有多个模块的优势?》经验,为你挑选了2个好方法。

是否有利于Android Studio项目中的多个模块只有一个大的应用程序 -模块?

我一般都了解Android模块和SOLID的优点,所以我的重点是特别考虑构建性能.gradle可以进行增量构建,如果只有一个模块发生变化,那么其他模块不需要处理吗?

这是显而易见的还是有相当大的开销?



1> Anurag Singh..:

拥有多个模块而不是创建单个大型应用程序模块是非常有利的.以下是要点:

    如果您发现编译时间花费的时间较长,那么您可以从gradle中禁用该模块,而不是暂时处理并更快地编译它.

    模块帮助我们将项目划分为离散的功能单元.您可以创建一个包含所有纯Java bean的数据模块,如果您在同一个域中,则可以由多个应用程序使用.例如.财务域可以有两个应用程序,一个用于查看客户的策略,另一个可以用于保险代理查看相同的数据.但是数据模块可以在所有应用程序之间共享,甚至数据模块也可以从服务器或API团队借用.数据模块可以单独测试,没有任何Android依赖关系,任何人都知道java可以编写测试用例.

    每个模块都可以独立构建,测试和调试.

    在您自己的项目中创建代码库时,或者您希望为不同的设备类型(如电话和可穿戴设备)创建不同的代码和资源集时,其他模块通常很有用,但要将所有文件保存在同一项目中并共享一些代码.

    Android app模块和Library模块也不同.

    您可以根据ASOP的API版本保留两个不同版本的模块.

您可以在Android开发人员资源上查看更多信息

模块化如何加速Android应用的构建时间

Instagram及更高版本的应用程序模块化和模块延迟加载

Mauin模块化Android应用程序



2> Tobias..:

昨天有一篇关于Medium的文章,它正好解决了我的问题:

https://medium.com/@nikita.kozlov/how-modularisation-affects-build-time-of-an-android-application-43a984ce9968#.at4n9imbe

TL;博士:

首先也是最重要的,假设是正确的,模块化项目可以显着加快构建过程,但不适用于所有配置.

其次,如果以错误的方式完成拆分,那么构建时间将大大增加,因为Gradle构建了库模块的发布和调试版本.

第三,对于具有多个模块的项目,以测试驱动的方式工作更容易,因为构建一个小的库模块比整个项目更快.

第四,并行做很多事情会减慢构建速度.因此拥有更强大的硬件是一个好主意.

您可以在下面找到本文中描述的所有实验的结果

更新

在Google I/O '17上解决:https://youtu.be/Hx_rwS1NTiI ? t = 23m17s

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有