天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

デザインパターン関連の本について簡単にまとめてみる

今はデザインパターンについて勉強していて、何冊かの本を勉強の過程で読んでいるのですが、簡単にここまで読んだ本&現在読んでいる本のメモを書いてきます。

オブジェクト指向における再利用のためのデザインパターン 

デザインパターンの原点といったらこの本。
賛否両論分かれている本ですが、個人的には読んでおいて良かったかな、という感想です。
例が古いとか、分量が多い上に日本語訳が少し分かりにくい所があるというのは、まあ確かにその通りかもとは思うのですが、デザインパターンに至るまでの背景だったり、デザインパターンを通して見えてくる設計原則が細かい粒度で解説されているのは、この本だけなのがその理由です。
あと、デザインパターンの限界の話や、具体的な例にページ数を多く割く必要がどうしてもあったが、具体的な例だけを伝えたい訳ではないという話も書いてあり、デザインパターンを使う上で注意すべきことが明記されていた点も良かったです。

Java言語で学ぶデザインパターン入門

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

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

  • 作者:結城 浩
  • 発売日: 2004/06/19
  • メディア: 大型本

ソースコードは古いですが、デザインパターンという意味だと、自分が読んだ中ではこの本が一番分かりやすいと感じました。
ソースコードサンプルが充実しているのは勿論ですが、各デザインパターンを使うコンテキスト含め丁寧な解説がある上に練習問題もあるので、最初はこの本から勉強をスタートするのが良かったかな、という感想です。
練習問題も豊富なのが嬉しいです。

実践!!デザインパターンオブジェクト指向設計のポイント

デザインパターンに対する最初のとっかかりとして使いました。(分量が少なくサンプルコードや練習問題もあったので)
ただ、完全にカタログ化に近い形になっているのが個人的には辛く、デザインパターンを使うコンテキストや生み出された理由が今一つ分からず、他書籍と併用しながら読むような形になりました。

オブジェクト指向のこころ

個人的には超良著でした。
デザインパターンを導き出す過程を説明しつつ、デザインパターンの原則と戦略について丁寧に解説してくれているのが好印象でした。
また、デザインパターンが誤って使われがちな点についての注意喚起が幾度となくされており、デザインパターンを学んだあとにやりがちな、デザインパターンの濫用を防いでくれます。
この本を読んでいたお陰で、GOF本を少し上手に読めていたんじゃないかな、とも思っているので、デザインパターン入門を読んでデザインパターンを一通り勉強した後は、GOF版を読む前に本書を読んでみると良いかもしれません。

アジャイルソフトウェア開発の奥義 第2版 オブジェクト指向開発の神髄と匠の技

最初に読んだ時は挫折してしまったため、基本知識を収集してから現在進行形で再チャレンジしています。
ある程度の基本知識がついた今は、読んでいて楽しい本、わくわくするような本というのが感想です。
Bobおじさんがソフトウェア開発について考えていく様子を追体験しながら、デザインパターンオブジェクト指向、あるいは設計原則について学べるので、Bobおじさんと一緒にソフトウェア開発しているような感覚が持てて、本当に面白いです。
こういうデザインを自分ならするかなあ、と思ってたら実際にBobおじさんが同じデザインをして「おお!」という喜びがあり、その後読み進めていくと自分のデザインの欠陥に気がつき、「ああ...」と落胆し...というように、過程を踏みながら感情移入して読んでいけるのが最高です笑