増補改訂版Java言語で学ぶデザインパターン入門読んだ

増補改訂版Java言語で学ぶデザインパターン入門

増補改訂版Java言語で学ぶデザインパターン入門

読んだ。

デザインパターン、教養だと思っていたし、読み終わった今も教養だと思っているんだけど、この本で初めてデザインパターン学んだ。

リファクタリング―プログラムの体質改善テクニック読んだ - 銀の人のメモ帳

学んだほうがいいと思いつつも、何故今まで学んでこなかったかというとリファクタリング本読んだ時にも書いたんだけど、デザインパターンの誤用に苦しめられてきたからで、必要になるまでは学ぶべきでないと思っていた。ので、学んでなかった。

必要になるまでは学ぶべきでないというのは、前までは「コードを読み書きする上で」必要になるまでは、と思っていたんだけど、デザパタ本読み終わったら「コードを書く上では」必要になるまで学ぶべきでないという感じになった。

普段使っているプラットフォームやSDK、ライブラリにデザインパターンは当然のように用いられていて、知っていればコードを読む上で、理解の助けになると思った。デザインパターンは何か問題を解決するためにパターンが生まれているので、デザインパターンを通してコードを読めば実装者の意図が汲み取りやすくなると思う。

このデザインパターン本、いい本だと思うんだけど、普通に読むと「パターン概要→クラス設計みたいなやつ→説明→目的」みたいに書かれてる事が多くて、普通に読んだだけだと「こういう問題を解決するための○○パターン」みたいに理解しづらいと思った。

なので、各パターンを読む時には、一回目は最後までサラッと読んで、パターンの目的を把握してから精読する方が正しく身につけられるように感じた。

言ってしまえば、各パターンの詳細を覚える必要は無くて、各パターンが解決する問題だけ覚えておけば良いと思う。

まだ全てのパターンについて理解したわけではないし、結構だらだら読んでしまって内容覚えていないパターンもあるので、復習したりコード読んだりして理解を深めたいと思う。デザパタ誤用おじさんとかデザパタ厨みたいにならないようにしたい。

デザインパターン紹介

GoF以外にもデザインパターン色々あるし、そこらへんも把握したい。