オブジェクト指向でなぜつくる?

今の仕事では、Javaを教えないといけないので、必然的にオブジェクト指向についても
教えないといけません。
しかし、もちろんそんなに簡単にできるものではないわけで、ああ困ったものだと。

そこで定評ある『なぜ』シリーズです。

オブジェクト指向でなぜつくるのか?知っておきたいプログラミング、UML、設計の基礎知識
前の日記で『Javaでなぜつくるのか』を紹介して、かなり悪い点を付けた私ですが、
この本はいいです。かなりお勧めですね。

まず、「オブジェクト指向」を、「オブジェクト指向プログラミング」(OOP)と
オブジェクト指向分析・設計」(OOA/OOD)に分けています。
プログラミング言語の進化の流れの中で説明していくことで、OOPの特徴やメリットが
明晰に説明されていきます。
そして、OOA/OODを、「OOPが確立した結果、活用されるようになった手法、ものの
見方」であると位置づけて説明することで、類書に多く見られる「説明のためなのだけど、
かえって分かりにくいたとえ」から逃れることに成功しています。

難点をあえて挙げるなら、上述のようにOOPから説明するという構造になっているため、
プログラミング経験の無い(特に、Cのようなポインタ操作を含む言語の経験の無い)
人には読みにくくなっていることでしょうか。

プログラマとしてそれなりに経験はあるが、オブジェクト指向にはまだ取りかかれて
いない」という、遅れて来たオブジェクト指向プログラマ、あるいはオブジェクト指向
分析/設計をしなければならなくなった設計者に、正直に勧められる本です。