オブジェクト指向入門に再入門した

ふと気が向いて、今日からOOSC-2を読みはじめました。

実は、訳書の第2版が出た直後に流し読みはしたのですが、身についているとは言いがたいです(流し読みで済ませた時点で殴られそうな話ですが……)。

OOについて理解が足りないことは、たとえば、こんな日常の場面でも感じます。

『ずっと受けたかったソフトウェア設計の授業』という本に、「JSDとオブジェクト指向」という次のような図が出てきます(p.222)。

そして、こんなことが書かれています。

本書では、JSP、そして、JSDとジャクソン先生の技法をたどる形で、ソフトウェアエンジニアリングの基本的な話題を取り上げてきました。一貫した思想は「実世界にある問題を、ソフトウェアを使って解く」ということでした。(中略)

一方、オブジェクト指向技術は、C++Java、いろいろなフレームワークの提唱、そして、オブジェクト指向プログラミング、設計、分析と発展した経緯もあり、どうしても実装世界に引きずられているようだと見ています。ベンダーがシステムを売りたいという心境は理解できますが、クライアント(ユーザ)の抱えている問題を把握し、それを解決できなければ価値はありません。

飯泉順子,大槻繁:『ずっと受けたかったソフトウェア設計の授業』,p.p.222-223,翔泳社,2011.8.

釣りかと思うくらいの言い切りようです。この本の中で最も強い違和感を持ったのは、この箇所でした。しかし、その違和感を上手く説明できないことにも、同時に気づきました。それは、オブジェクト指向のアプローチを自分がよく理解していないからでしょう。

OOSCが必読の良書であるとはいえ、この本を読んで自分の仕事の生産性が上がるかは分かりません。が、5年前よりも理解できることが増えていることを期待しつつ、読んでみようと思います。