プログラム作成の方法論入門

プログラミングをしてみたい、と考える人はたくさんいると思います。プログラミングを学ぶための入門書も、書籍・インターネットを問わず近年とみに増えています。

しかし実際「入門編」を終えてみたはよいけれど、「じゃあ目的のプログラム(*)をどういうやり方で作っていけばよいのだろう?」「教科書にある問題ならわかるけれど、もっと実用的なソフトウェアをどう作ればよいのだろう?」とはたと立ち止まってしまってはいませんか?この連載は、そんな「プログラミング中級者」の皆様にお送りするものです。

プログラム作成の4つのステップ:トップダウンか反復か、それとも…

「プログラムの作成」というだけでは、なんだか漠然としていますね。そこで、プログラム作成という行為がどのような段階からできているかを、ここでは考えたいと思います。続きを読む

 

ソフトウェア工学について

実のところ、「プログラムをどう作っていけばよいか」という問題は「ソフトウェア工学」の問題領域です。ソフトウェア工学は誕生して半世紀ちょっとの比較的新しい学問で、ずばり「ソフトウェアをどのようにして作るか」「ソフトウェアサービスをどのように運営・維持していくか」が中心課題となる学問です。

ほとんどの場合、ソフトウェア工学で議論されている「ソフトウェア」は、ソフトウェア会社が作るような大規模なものが念頭に置かれています。けれども本質的には、ソフトウェア工学的な知恵は大小どのような規模のプログラムにも適用できるようなものばかりです。言い換えれば、一度ものにしてしまいさえすれば、どんな規模のプロジェクトにであれ一生使うことができる、ということです!

そこでここでは、ソフトウェア工学から得られるあれこれの知恵が、どのようにプログラム作成に役立つかを紹介していきます。この連載が、少しでも皆さんのお役に立てれば幸いです。


*「プログラム」という言葉の定義について:ここでは、「何らかのプログラミング言語を用いて、特定の機能を実現するために作成されたコード断片」全てを「プログラム」と呼ぶことにします。ソフトウェアはもちろん「プログラム」ですし、Javaで書かれたソフトウェアの特定のクラスの特定のメソッドも「プログラム」です。