ソフトウェア工学をつつく5−構造化プログラミング誕生。GOTOは有害?2008-08-08 Fri 10:11
1960年代後半のソフトウェア工学の歴史は、B.W.Boehm(ベーム)氏、Dijkstara(ダイクストラ)氏達によって、大きな展望を迎える事になるピヨ。彼らが提唱したのは、
1つの入り口と1つの出口を持つようなプログラムは、「順次・反復・分岐」の3つの基本的な論理構造によって記述できる-構造化定理 『Go to文は有害だと考えられる』("Go to statement considered harmful") - GOTO有害論 このころから既にスパゲッティプログラムの問題が認識されていた事がわかるよね。でも理屈だけじゃわかりにくいのでプログラムを書いてみた。
┐(´ー`)┌ヤレヤレ うーん。こりゃすごい。この調子で何万行も書くんだから彼らの言い分がわかるよね。 確かにGTOTの多用は有害以外のなにものでもないし、根源は機械語だから全てのプログラムは「順次・反復・分岐」でかけるピヨ。生産性が悪いけどね。 しかしダイクストラは、アセンブラな人達から「GOTOは必要だ!」と猛抗議を受けたんだ。まぁ、確かにOSとか作る時は必要性を感じるピヨ。ダイクストラも言い方が悪かったのかもしれないね。 この議論の結果、今日当たり前となったbreak、continue、continue、switch・・・などの限定版GOTOが登場したんだ。これらはアセンブラレベルではGOTOそのものピヨ。だけど、人間にとってはGOTOは読みにくいよね。だからGOTOに意味を持たせたこれらの文が考案されたんだ。猛抗議の中主張し続けた勇者ダイクストラに感謝しよう! |
この記事のコメント |
コメントの投稿 |
||
|
|
||
| 管理者だけに閲覧 | ||
|
|
||
この記事のトラックバック |
|
| 無差別に技術をついばむ鳥 |
|