|
スパゲティプログラムまたはスパゲティコードとは、プログラムのソースコードがそれを制作したプログラマ以外にとって解読困難である事を表す俗語。名称の由来は、皿に盛られたスパゲッティのようにロジックが絡み合っていることから。 == 概要 == 実務において、特にクライアントからの受注や業務委託に求められるコーディングは他者が解読可能な形態、すなわちコードの整序やリファクタリングされたプログラムコードを求められる。しかし、コード共有範囲の狭いプロジェクトや趣味で行うプログラミングの場合、第三者に対する可読性を追求しない場合がある。 プログラムのテストを行う際、プログラムの実行順序をトレース(追跡)するのに苦労する。それゆえ、バグが発生してもなかなか原因を見つけ出せなくなる。 スパゲティプログラムは保守・機能追加を妨げるため、修正されることが望ましい。しかし、「動作しているプログラムは修正しない」ことを習慣とする文化では、修正は避けられる傾向にあった。これは、見通しの悪いスパゲッティ状態のプログラムを変更することにより予期せぬバグを追加してしまったり、「寝たバグを起こす」可能性が高かったからである。時間や予算・人材が許す場合でも、この傾向は見られた。 後にテストファーストの方法論が確立され、プログラム本体の完成と同時期にテストプログラムも作成されるようになると、プログラム変更の危険性は相対的に低くなり、このような状態のプログラムは積極的に修正することが奨励されるようになった(リファクタリング)。 なお近年、jQueryなどのJavascriptライブラリで可読性を欠くコードが配布されているが、ダウンロード高速化を目的とした圧縮によるため、一般的なスパゲティプログラムとは経緯が異なる。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「スパゲティプログラム」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Spaghetti code 」があります。 スポンサード リンク
|