まずはこの本のタイトルにもなっている素朴な質問から始めましょう。 「オブジェクト指向でなぜソフトウエアを作るのですか?」 誰かにこんな質問をされたなら、筆者はこう答えます。

 「その理由はソフトウエアを楽に作りたいからです」と。

 ここで「楽に作る」と聞いて、「おやっ」と思った方がおられるかもしれません。何しろオブジェクト指向と聞けば、「抽象的でとっつきづらいもの」というイメージを持つ方がまだまだ少なくないでしょうから。

 オブジェクト指向としてひとくくりにされる技術には、実にさまざまなものがあります。Java やPython のようなプログラミング言語に始まって、要求仕様や設計内容の図式表現、再利用可能なソフトウエア部品群、優れた設計のノウハウ集、業務分析や要件定義の効果的な進め方、システム開発を柔軟に進めるための開発手法など、ソフトウエア開発のほとんどの領域をカバーしています。

 しかしこれらの技術は、個別に見るとそれぞれ随分違うものです。あえて共通点を探せば、ソフトウエア開発に関する技術であることと、それを円滑に進めるための技術ということぐらいでしょう。

 このため、オブジェクト指向をひと言で表現すれば「難しいソフトウエア開発を楽に行うための総合技術」となるでしょう。今やオブジェクト指向は、対象範囲が大きく広がった結果としてそんな技術になりました。


Patricia Soon/Shutterstock.com
Patricia Soon/Shutterstock.com