标签:uri site 优雅 快速 使用 org software 开发 提高
第一次发布代码,就好比借了一笔钱。只要通过不断重写来偿还债务,小额负债可以加速开发。但久未偿还债务会引发危险。复用马马虎虎的代码,类似于负债的利息。整个部门有可能因为松散的实现,不完全的面向对象的设计或其他诸如此类的负债而陷入窘境。 ---维基百科
技术负债(英语:Technical debt),又译技术债,也称为设计负债(design debt)、代码负债(code debt),是编程及软件工程中的一个比喻。指开发人员为了加速软件开发,在应该采用最佳方案时进行了妥协,改用了短期内能加速软件开发的方案,从而在未来给自己带来的额外开发负担。这种技术上的选择,就像一笔债务一样,虽然眼前看起来可以得到好处,但必须在未来偿还。软件工程师必须付出额外的时间和精力持续修复之前的妥协所造成的问题及副作用,或是进行重构,把架构改善为最佳实现方式。
1992年,沃德·坎宁安首次将技术的复杂比作为负债。 ---维基百科
通俗易懂的例子:
技术债务类似于金融债务。软件开发就像是去“贷款”,而技术债务就像是它的“利息”,“利息”是需要以未来额外的时间来还的。重构才相当于是支付“本金”。
技术负债的“利息”会越滚越多,甚至最后都无法计算其带来的影响。将有技术负债的代码发布到生产系统,就是提高了“利息”的“利率”。最终将会导致技术团队破产,质量无法保障。
SQALE (Software Quality Assessment based on Lifecycle Expectations) is a method to support the evaluation of a software application source code. It is a generic method, independent of the language and source code analysis tools. ---wikipedia
SQALE(基于生命周期期望的软件质量评估)是一种支持软件应用程序源代码评估的方法。它是一种通用方法,独立于语言和源代码分析工具。
SonarQube 中的技术债务就是基于SQALE方法,是通过代码规则和问题来实现的。
SonarQube 项目技术债务
SonarQube 代码技术债务详情
SonarQube 技术债务配置
SonarQube SQALE 商业插件提供更详细的报告
原图链接:https://www.bitegarden.com/img/sonarqube-sqale/sonarqube-sqale-dashboard.png
SonarQube 已经详细的列出了技术债务相关的所有指标和问题,也有很完善的管理和推荐解决方案。
SonarQube 问题中推荐的解决方法
我强烈推荐大家使用 SonarQube 来管理和解决技术债务。
后续我会写关于 SonarQube 的系列文章,大家敬请期待~
技术债务(Technical debt)的产生原因及衡量解决
标签:uri site 优雅 快速 使用 org software 开发 提高
原文地址:https://www.cnblogs.com/daodaotest/p/12460594.html