スパゲッティプログラム | Programming Place Plus 用語集

トップページ用語集

名称

解説

ソースコードの見通しが悪く、解読が困難になってしまっているプログラムのことです。

ロジックが複雑に絡み合っている様子を、皿に盛られたスパゲッティに例えた俗語です。

たとえば、変数関数などの不適切な名前付け(命名規約が取り決められていなかったり、守られていなかったりした結果)、極端に複雑な制御構造分岐繰り返しが何重にも入れ子になっていたり、goto文を乱用したりした結果)、思いがけないところと共有された変数の存在(グローバル変数の乱用や、メモリの極端な節約志向などの結果)といったことが原因になります。

第三者による解読を難しくするためにおこなう難読化や、コードのサイズを削減するために不要な文字を削除したり識別子を短く変換したりする最小化(ミニファイ)とは異なるものです。

スパゲッティプログラムは可読性保守性が非常に悪く、プログラムを実行して発見されたバグの原因をコード内から特定することも、正しく修正することも困難です。また、新しい機能を追加したバージョンアップ版を作成することも難しくなります。

スパゲッティプログラムにならないように、コーディング規約を遵守し、一般的なガイドラインを極力遵守し(スコープを狭く保つなど)、定期的にリファクタリングを行うなどして、コードの見通しが良い状態を保つようにすべきです。スパゲッティプログラムになってしまった場合にも、リファクタリングの手法を用いて改善を図ることができます。


参考リンク

更新履歴


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
Twitter でツイート Twitter をフォロー LINE で送る
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る