UberTechnologies Inc.今天又以Piranha的形式添加了一个开源程序,该工具自动从应用程序项目中删除过时和不必要的代码。
优步最初创建了Piranha,以帮助其开发人员搜索冗余代码的移动应用程序。 具体来说,软件清理过期的特征标志,这些标志是支撑现代企业软件项目的持续交付方法所必需的软件组件。
特征标志,也称为特征切换,本质上是作为一个打开按钮的代码。 优步使用它们帮助其工程师测试其应用程序中的新功能,然后将它们释放到通用可用性中。 功能标志还提供了一种为不同用户定制服务的方法,并将其作为代码杀死开关,允许工程师远程禁用应用程序的故障部分,以防止其崩溃整个程序。
但随着收益的增加,会出现一些不利因素。 特征标志将复杂性添加到应用程序的代码库中,一旦它们超过了它们的目的,就必须手动删除。
Piranha背后的Uber工程师在一篇博客文章中解释说:“这些非功能性功能标志代表着技术上的债务,使开发人员难以在代码库上工作,并可能使我们的应用程序膨胀,需要不必要的操作来影响最终用户的性能,并可能影响整体应用程序的可靠性。
Piranha主要通过自动删除陈旧的功能标志来应对这一挑战。 该工具在一个应用程序中找到了在一段时间内没有被修改的所有功能标志,例如8周,检查它们是否处于活动使用状态,当它确定一个组件是陈旧的时,删除所有相关代码。 然后,Piranha将提议的更改提交开发团队的相关成员批准。