目次:
定義-技術的負債とはどういう意味ですか?
技術的負債とは、最適なソリューション全体を適用する代わりに短期的に実装しやすいコードを使用した場合に発生する追加の開発作業を反映したプログラミングの概念です。
技術的な負債は、特にリファクタリングの文脈において、一般的に極端なプログラミングに関連しています。 つまり、開発プロセスの一部として既存のコードの再構築(リファクタリング)が必要であることを意味します。 この考え方の下では、リファクタリングは不十分なコードの結果だけでなく、進化する問題の理解とその問題を解決する最良の方法に基づいて行われます。
技術的負債は設計負債としても知られています。
Techopediaは技術的負債を説明します
この用語は、最初のwikiの開発でも知られているプログラマーであるWard Cunninghamによって造られました。技術的負債は、ソフトウェア開発を金銭的負債と同一視する比isです。 2つの潜在的なオプションがあるプロジェクトがあると想像してください。 1つは迅速かつ簡単ですが、将来変更が必要になります。 もう1つはより良いデザインですが、実装に時間がかかります。 開発では、コードを迅速かつ簡単なアプローチとしてリリースすることは借金を負うことに似ています-技術的な借金の場合、将来的には余分な仕事の形で生じる利子の義務が伴います。 リファクタリングに時間をかけることは、元本を返済することに相当します。 これには短期的には時間がかかりますが、将来の利払いも減少します。
ワードカニンガムは、1992年にこの概念を次のように説明しています。
「初回コードの発送は借金をするようなものです。書き直してすぐに返済する限り、少し借金すれば開発の速度が上がります。オブジェクトはこのトランザクションのコストを許容範囲にします。完全に権利のないコードに費やされたものは、その負債の利子としてカウントされます。エンジニアリング指向の組織全体は、オブジェクト指向またはその他の非統合実装の負債負荷の下で停止することができます。
この概念は、借金が決して発生しないという意味ではありません。 レバレッジが正しく使用されると会社を助けることができるように、迅速なソリューションはソフトウェア開発の市場投入までの時間を短縮することを意味します。 さらに、技術的負債は単なる貧弱なコードではありません。 悪いコードは悪いコードであり、非現実的なプロジェクトの制約の下で優秀なプログラマーの仕事から技術的な負債が生じる可能性があります。
