「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

スパゲティプログラム

pointこの用語のポイント

pointソースコードだよ

pointこんがらがっているよ

point見たり変更したりするのが大変だよ

スポンサーリンク

簡単に書くよ

スパゲティプログラム(英:spaghetti program)とは

人間語で書いたプログラムの元ネタを「ソースコード」と言うのですけどね。見たり変更したりするのが大変な、まるでスパゲティのように こんがらがったソースコードのこと
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「ソースコード」について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ソースコードは「人間語で書いたプログラムの元ネタ」です。

スパゲティプログラム

プログラムを作って動かすまでの一般的な流れは

1.人間語でプログラムの元ネタを書く
2.元ネタを人間語から機械語に翻訳する
3.翻訳された指示に従って、コンピュータさんが お仕事する


です。

スパゲティプログラム2

コンピュータさんは人間語が分かりません。

スパゲティプログラム3

人間様はコンピュータさんの言葉が分かりません。

スパゲティプログラム4

プログラムは人間様が作るものです。
そこで最初は人間様が分かる言葉でプログラムを作ります。
コンピュータさんに対する「あれをやれ」「これをやれ」な命令を人間語で書くのです。

スパゲティプログラム5

次に人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳します。
実際に お仕事をするのは、コンピュータさんですからね。
コンピュータさんが分かる言葉に変換する必要があるのです。

スパゲティプログラム6

コンピュータさんが分かる言葉に翻訳したので、コンピュータさんは命令の内容を理解できます。
指示に従って、お仕事をしてくれるでしょう。

スパゲティプログラム7

かなり簡略化した説明ですけどね。
これがプログラムを作るときの流れです。

この話で登場した

人間語で書いたプログラムの元ネタ

を「ソースコード」と言います。

スパゲティプログラム8

以上を踏まえて

「うわ~、ごちゃごちゃしていて見る気がしねー(;´A`)」状態のソースコード

を揶揄した呼び名が「スパゲティプログラム」です。
スパゲティコード」や「スパゲティ」などとも呼ばれます。

スパゲティプログラム9

スパゲティプログラムは、あっちゃこっちゃに処理が移動するので見ていくのが大変です。
絶妙なバランスで成り立っているので、変更すると どこに影響が出るか分かりません。
そんなデンジャラスで時間泥棒な状況に追い込む要素を多く含んでいるソースコードです。

スパゲティプログラムになる要因は いろいろありますが、例えば

1.goto文の多用
2.度重なる仕様変更や機能追加
3.その場しのぎの間に合わせの実装


などが よく挙げられます。

システム開発の現場で「スパゲティプログラム」という単語が出てきたら、存分に「おえー(;´A`)」となってください。


image piyo2

一言でまとめるよ

まぁ「スパゲティプログラム」って単語が出てきたら「こんがらがったソースコード(人間語で書いたプログラムの元ネタ)なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像022
書籍画像034

おまけ

■訳してみるよ

「spaghetti(スパゲティ)」は食べ物の「スパゲティ」です。
「program(プログラム)」の意味は「計画」とか「演目」とか「(コンピュータの)プログラム」とかです。
何となく くっつけると

スパゲティっぽいプログラム

となります。




書籍画像
わわわ説明術コラム
宣伝だよ
わかばちゃんとつくって、壊して、直して学ぶ NewSQL入門
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
おい点P、動くんじゃねえ!──ニガテ民のための算数と数学の本