その3 GOTOでスパゲッティ(2002/02/17作成)

GOTOっていうコマンドがあります。
GOTOの後に記述する場所に,ジャンプしろっていう命令です。
昔,マイコンベーシックマガジン(まだあるか?)っていう雑誌に載っていた,N88-BASICというプログラミング言語の投稿プログラムには,ふんだんに使われていたと記憶しています。
ただ,これを使いすぎると,プログラムの構造がめちゃくちゃになって,流れがつかみづらくなると言われています。
この状態を,スパゲッティと言っていました。

そのせいか,Visual BasicとかJAVAでは,GOTOコマンドはなくなっているようです。
OPLでは,まだあるんだなぁ,よく使うんだろうか?と思っていたら,PSION Series5 完全マニュアル (著者:天野賀章 発行:イケショップ モバイルプラザ)では,やはり「なるべく使わないほうが無難」と書いていました。

でも,プロシージャ(*)の構成の仕方によっては,やっぱりスパゲッティになっちゃうような気がします。
まだ,そんなに大きなプログラムを作ったことがないので分かりませんけど。
気をつけましょう。


−−−−−−−−−−−−−−−
*プロシージャ
いくつかのプログラムを組み合わせて,一つのプログラムを構成する方法があります。
その,個々のプログラムをプロシージャといいます。
「サブルーチン」とか「手続き」と書かれていることもあります。

例えば,あるプログラムの中で,同じ処理(計算とか)が何度も行われる場合。
プロシージャを分けなければ,同じ処理を何度も書かなければなりません。
コピー&ペーストでも良いですが,それではプログラムが見難くなります。
この処理を別プロシージャにして,メインのプロシージャから必要なときに呼び出すようにすれば,この処理の記述は1回で済むわけです。

詳しくは,他のサイトとか本を参考にして下さい。
OPLに限らず,いろんな言語で使われている手法です。


その2 OPLの決まりごと<-->その4 ループの入れ子は可能だった
OPLはじめの一歩
最初のページ