「スパゲティプログラム」の版間の差分

削除された内容 追加された内容
編集の要約なし
4行目:
|
}}
'''スパゲティプログラム'''(Spaghetti code)または'''スパゲティコード'''とは、[[プログラム (コンピュータ)|プログラム]]の[[ソースコード]]がそれを制作したプログラマ以外にとって解読困難である事を表す俗語。名称の由来は、皿に盛られた[[スパゲッティ]]のようにロジックが絡み合っていることから。
 
[[File:Computerplatine Wire-wrap backplane detail Z80 Doppel-Europa-Format 1977.jpg|right|thumb|プログラミングが[[ワイヤラッピング]]で行われていた時代のスパゲティコード(1977年)]]
21行目:
== スパゲティプログラムの特徴 ==
[[image:Spaghettata.JPG|250px|thumb|right|ソースが複雑に絡み合ったスパゲティ・ナポリタン]]
 
=== goto文の濫用 ===
スパゲッティプログラムを作りだす原因としてよく挙げられるのが、[[goto文]]の濫用である。[[BASIC]]などの言語にあるgoto文は、無条件に指定したラベルの位置までジャンプする。これは[[関数 (プログラミング)|関数]]や[[ループ (プログラミング)|ループ]]などの[[制御構造|制御構文]]を利用した制御に比べ、処理の流れを追いにくく、[[ソースコード]]の[[可読性]]およびメンテナンス性を低下させてしまう。近代的な[[プログラミング言語]]では、[[例外処理]]や多重ループを抜けるための制御文が用意されているため、ほとんどgoto文は使われない。