[转帖]Uber 开源自动化工具 “食人鱼”,专门吃掉你的旧代码

Uber 开源自动化工具 “食人鱼”,专门吃掉你的旧代码

https://segmentfault.com/a/1190000022097346

食人鱼的菜单上通常没有代码,但今天说的这种鱼却有所不同。

Uber 开源了一款自动化工具,名为 Piranha(意为:食人鱼),该工具能够自动从应用程序代码库中删除过时的和未使用的代码。

自动化工具 Piranha

clipboard.png

根据 Uber 官方博客的介绍,在Uber,工程师们使用功能标记来自定义我们的移动应用执行,为不同的用户组提供不同的功能。这些标志允许例如在运营的不同区域中本地化用户的体验,更重要的是,逐步向用户推出功能并尝试使用同一功能的不同变体。

但是,在某项功能已 100% 推广给用户或实验性功能被认为不成功之后,代码中的功能标志就过时了。这些非功能性特征标志代表技术负担,使开发人员难以在代码库上工作,并且可能使应用程序臃肿,需要进行不必要的操作,这些操作会影响最终用户的性能并可能影响整体应用程序的可靠性。

对于工程师而言,消除这些「债务」可能会非常耗时,从而阻止他们开发新功能。

为了使该过程自动化,Uber 开发了 Piranha,该工具可扫描源代码以删除与过时或过时的功能标志相关的代码,从而使代码库更干净,更安全,性能更高且更易于维护。

已正式投入使用

目前为止,Uber 已经实现了用 Piranha 来重构 Objective-C、Swift 和 Java 程序。接下来,Piranha 有可能会扩展至更多语言(例如 Kotlin,Go 等),同时 Uber 也号召更多开发人员来一起为它做出贡献。

Piranha 项目博客:
https://eng.uber.com/piranha/

GitHub 地址: 
https://github.com/uber/piranha

猜你喜欢

转载自www.cnblogs.com/jinanxiaolaohu/p/12550235.html