アマゾンのセール情報を見てたら、下記の書籍を発見しました。懐かしさのあまり、ここに書いておこうと思いました。
オブジェクト指向プログラミングの設計パターンを集めて解説してくれている本。読んだのがもう20年くらい前になります。ワタシが読んだのはたぶん、増補改訂版ではない方なのかな。何が違うんだろう。
レビュー等見る限り、定番本としてまだ売れてるみたい。
オブジェクト指向プログラミング?
オブジェクト指向って何?
きっと能力がある人は、その概念を理解しただけで、さまざま視野が広がるのでしょう。ただし、ワタシのようななんちゃって日曜プログラマ(当時)が独学で学習しても、「で?結局のところ何?」て感じは否めません。
クラスの概念、分かってますか?継承はどんな時に有用か、説明できますか?そんなん、Cで関数いっぱい作って#includeしまくってglobalとかlocalとか使い分けてmakeした方が簡単じゃん、と思っていませんか?
そういうモヤモヤを払ってくれる内容だったと思います。
デザインパターンとはなんたるかをJavaのコード実例を見ながら学ぶわけですが、その一つ一つをしっかり理解すると、オブジェクト指向とはなんぞや、オブジェクト指向で作るとはどういうことか、についての学びに繋がります。今だってオブジェクト指向隆盛の世の中(のように見える)だから、pythonでもrubyでも使うことはあるのかしら。(ワタクシ現場にいないから知らんけど)
また、このような設計ルール、概念を理解することは、Java使わなくても、もっといえばプログラミングの現場ではなくても、自分の強みにはなるのではないかと思います。 実際ワタシ自身は、学生当時、研究でコード書く必要はなかったし、ソフトウェア関係に就職する気もありませんでしたが、本書を読んで内容理解したことはたいへん良い経験でした。
ただ、えらそうに言ったところで、20年近く前の話なので、内容と言っても詳細は忘れてしまっています。続刊でマルチスレッド編もあるようで、併せて再読したくなってきました。
結城浩さんについて
著者の結城浩さんですが、他にもプログラミング関係の著書がいくつかあります。ワタシ読んだのは本書とCの本とJavaの入門書かな。あと暗号解読の本も読みました。どれも全部たいへん面白かったです。
あと、「数学ガール」という数学読み物も刊行されてるようです。かなり冊数多いですね。内容紹介見る限りは結構読みやすそうです。
いつか絶対読もう。