背景
近年来, 随着手机业务的快速发展, 为满足手机端用户诉求和业务功能的迅速增长, 移动端的技术架构也从单一的大工程应用, 逐步向模块化, 组件化方向发展. 以高德地图为例, Android 端的代码已突破百万行级别, 超过 100 个模块参与最终构建.
试想一下, 如果没有一套标准的依赖检测和监控工具, 用不了多久, 模块的依赖关系就可能会乱成一锅粥.
从模块 Owner 的角度看, 为什么依赖分析这么重要?
1. 作为模块 Owner, 我首先想知道 "谁依赖了我? 依赖了哪些接口". 唯有如此才能评估本模块改动的影响范围, 以及暴露的接口的合理性.
2. 我还想知道 "我依赖了谁? 调用了哪些外部接口", 对所需要的外部能力做到心中有数.
从全局视角看, 一个健康的依赖结构, 要防止 "下层模块" 直接依赖 "上层模块", 更要杜绝循环依赖. 通过分析全局的依赖关系, 可以快速定位不合理的依赖, 提
来源: https://yq.aliyun.com/articles/711545