行业新闻

技术债务的悖论:平衡创新与长期稳定

发布 2023年七月5日
分享:

技术债务的悖论:平衡创新与长期稳定:图 1

在快节奏的技术世界里,创新以前所未有的速度涌现,技术债务的概念已成为软件开发不可分割的一部分。技术债务指的是在选择快速便捷的解决方案而不是更稳健高效的解决方案时,在短期利益和长期后果之间做出的权衡。虽然技术债务可能带有负面含义,但它在满足发布时间表、推动创新以及适应不断变化的语言和框架方面发挥着至关重要的作用。本文将结合行业实例和专家观点,探讨技术债务的意义及其对软件开发的影响。

闪电侠的失败与改编的必要性

Adobe Flash 的兴衰是认识技术债务重要性的一个生动例子。2010 年,著名可用性专家 Jakob Nielsen 发表了一篇颇具影响力的文章,题为 "Flash:99% 的坏处"(Flash: 99% Bad)。 [1].尼尔森剖析了与 Flash 相关的众多可用性问题和性能缺陷,敦促业界放弃这种技术。Flash 的衰落为更新、更高效的替代技术铺平了道路,TypeScript 就是其中之一,它是 JavaScript 的静态类型超集。

语言在发展,技术债务在调整

编程语言的演变进一步凸显了接受技术债务的必要性。近年来大受欢迎的 TypeScript 实际上是二十年前在 Flash 的框架内构思出来的。它是一个超前的想法,在找到新的用途和平台之前一直处于休眠状态。这充分说明,过去的概念和解决方案最初被视为技术债务,但当技术格局发生变化时,它们又会重新成为宝贵的资产。

平衡技术债务和发布时间表

Iron Software 首席技术官雅各布-梅洛尔(Jacob Mellor)主张平衡处理技术债务,将其视为开发流程的必要组成部分。Mellor 指出

"一定程度的技术债务是健康的,它表明我们有远见。我认为技术债务就是尚未编写的单元测试"。 - 雅各布-梅洛尔

雅各布承认,一定程度的技术债务是不可避免的,因为这可以让团队满足发布时间表并推动创新。我们不应只关注完美,而应优先考虑可维护性和理解力,以取得长期成功。

Artem Koloskov 与 Mellor 的观点不谋而合,他进一步强调了技术债务的积极意义。科洛斯科夫断言

我欢迎技术债务。当这意味着语言被遗忘时,通常都是出于好的理由"。 - 阿尔特姆-科洛斯科夫

这凸显了适应和前进的必要性,抛弃那些不再符合现代开发实践的过时语言和框架。

作为 Iron 软件公司的高级工程师,Artem 解释说: "在 Iron,我们防止技术债务的最重要方法就是流程:我们强调代码质量、运行单元测试并定期重构,以防止冗余代码 "

技术债务尽管有负面含义,但在快速发展的技术环境中,它是软件开发不可或缺的一部分。从 Flash 等技术的消亡和 TypeScript 的出现中,我们认识到,曾经被认为是技术债务的东西往往会成为发展和创新的机遇。在满足发布时间表和保持长期可维护性之间取得平衡是成功的关键。通过接受技术债务、承认其存在并进行有效管理,开发团队可以驾驭瞬息万变的软件生态系统,并提供有影响力的解决方案来推动进步。

参考文献

[1] 尼尔森,J. (2010).Flash: 99% Bad.从 https://www.nngroup.com/articles/flash-99-percent-bad/

< 前一页
首席技术官:他们为何重要以及如何成为一名首席技术官
下一步 >
微软构建大会2023会议概要:Microsoft Azure上的云原生和Linux