发展历程 什么是技术债务? -技术百科的定义

什么是技术债务? -技术百科的定义

目录:

Anonim

定义-技术债务是什么意思?

技术债务是编程中的一个概念,反映了当使用短期内易于实现的代码而不是应用最佳的整体解决方案时出现的额外开发工作。

技术债务通常与极限编程有关,尤其是在重构的情况下。 也就是说,这意味着在开发过程中需要重组现有代码(重构)。 在这种思路下,重构不仅是编写不良代码的结果,而且还基于对问题的不断发展的理解以及解决该问题的最佳方法来完成。

技术债务也可以称为设计债务。

技术百科解释技术债务

这个词是由沃德·坎宁安(Ward Cunningham)创造的,他也是一名开发第一个Wiki的程序员。技术债务是一个比喻,将软件开发等同于金融债务。 假设您有一个有两个潜在选择的项目。 一种既快速又容易,但是将来需要修改。 另一个具有更好的设计,但是将花费更多的时间来实现。 在开发中,以快速简便的方式发布代码就像产生债务一样,它伴随着利息义务,对于技术性债务,利息义务将来会以额外的工作形式出现。 花时间进行重构等同于偿还本金。 虽然这在短期内需要时间,但也会减少未来的利息支出。

Ward Cunningham在1992年将这个概念描述如下:

“发行第一次代码就像欠债一样。只要通过重写及时偿还,一点债务就可以加快开发速度。对象使此交易的成本可以承受。当不偿还债务时,就会发生危险。每一分钟花在不完全正确的代码上的费用算​​作该债务的利息。整个工程组织可以在未合并的实现,面向对象或其他方面的债务负担下陷入停顿。”

这个概念并不意味着永远不会产生债务。 正如正确使用杠杆可以为公司提供帮助一样,快速的解决方案也可以缩短软件开发的上市时间。 此外,技术债务不仅是不良代码。 错误的代码就是错误的代码,在不切实际的项目约束下,好的程序员的工作可能导致技术负担。

什么是技术债务? -技术百科的定义