行業新聞

技術債務的悖論:平衡創新與長期穩定性

發佈 2023年7月5日
分享:

技術債務的悖論:在創新與長期穩定之間取得平衡:圖 1

在技術迅速發展的世界中,創新以前所未有的速度出現,技術債務的概念已成為軟件開發不可或缺的一部分。 技術債務是指在選擇快速和方便的解決方案與更穩健和高效的方案之間,為了短期利益與長期後果之間的權衡。 儘管可能帶有負面含義,技術債務在滿足發行進度、推動創新以及適應不斷變化的語言和框架中扮演著至關重要的角色。 在本文中,我們將探討技術債務的重要性以及它在軟體開發中的影響,並結合行業實例和專家意見進行分析。

Flash 的困境與適應的必要性

Adobe Flash 的興衰是認識技術債務重要性的一個深刻例子。 在2010年,著名的可用性專家雅各布·尼爾森發表了一篇具有影響力的文章,題為《Flash:99%的不良》。[1]. Nielsen 分析了 Flash 相關的眾多可用性問題和性能缺陷,敦促業界放棄這項技術。 Flash 的衰退為更新更有效的替代方案鋪平了道路,其中之一是 TypeScript,一種靜態類型的 JavaScript 超集。

語言演進,技術債適應

程式語言的演進進一步突顯了擁抱技術債務的必要性。 TypeScript 近年來已大受歡迎,實際上它是在二十年前的 Flash 環境中構想出來的。 這是一個超前於時代的想法,一直處於休眠狀態,直到找到一個新的目的和平台後才得以蓬勃發展。 這說明了過去的概念和解決方案,最初被視為技術債務,當技術格局發生變化時,如何重新成為有價值的資產。

平衡技術債務和發行時間表

Jacob Mellor,Iron Software的首席技術官,主張對技術債務採取平衡的方法,將其視為開發過程中必要的組成部分。 Mellor 表示,

“一定程度的技術債是健康的,它表明了遠見。”

我認為技術債就像是那個尚未撰寫的單元測試。” - Jacob Mellor

Jacob 承認一定程度的技術債務是不可避免的,因為它讓團隊能夠符合發布時間表並推動創新。 完美不應該是唯一的焦點,而應該是優先考慮可維護性和可理解性,以實現長期成功。

阿爾特姆·科洛斯科夫呼應梅洛的觀點,進一步強調技術債務的積極面。 Koloskov 斷言,

我以某種方式歡迎技術債務。

"當語言被遺忘時,通常都有充分的理由。" - Artem Koloskov

這突顯了需要適應和前進的需求,拋棄不再符合現代開發實踐的過時語言和框架。

作為Iron Software的高級工程師,Artem解釋說:"我們在Iron防止技術債務的最重要方式是過程:我們強調代碼質量,運行單元測試並定期重構以防止代碼冗餘。"

技術債務,儘管其負面含義,是快速發展的技術環境中軟體開發不可或缺的一部分。 從像是Flash的技術衰退和TypeScript的興起中學習,我們意識到過去被視為技術債的東西,往往可以成為成長和創新的機會。 在滿足發佈進度與保持長期可維護性之間取得平衡對於成功至關重要。 透過擁抱技術債務,承認其存在,並有效管理它,開發團隊可以在不斷變化的軟件生態系統中導航,並提供推動進步的影響力解決方案。

參考資料:

[1]Nielsen, J. (2010). 閃存:99% 不好。 检索自https://www.nngroup.com/articles/flash-99-percent-bad/

< 上一頁
首席技術官:為什麼他們至關重要以及如何成為其中之一
下一個 >
微軟開發者大會2023會議摘要:Microsoft Azure上的雲原生和Linux