代码染色&无效代码清理
Source :
mp.weixin.qq.com
D是我们团队的服务端应用,其代码库历史悠久,最早可以追溯到淘宝APP无线端迁移,应用中许多代码已无线上流量,但代码并未随业务的下线被清理。越来越多的代码“沉淀”下来,既增加了团队新人学习门槛,也增加日常开发维护成本。但实际做代码下线并非容易,仅凭业务逻辑决策代码清理费时费力,还容易误删在使用的业务代码,因此非常需要工具来辅助做代码的清理,这就是基于代码执行染色和覆盖分析做代码下线方案的背景。 代码执行染色&执行覆盖率分析,使用JVM agent的扩展能力实现代码的插桩和在线染色,再通过解析采样的数据可得到代码的执行情况,清理代码就“有理有据”;仅靠原始分析出的数据清理依然低效,为此我们将数据采集、覆盖率可视化通过IDEA插件集成,实现清理无效代码过程又准又快。