1. TOP
  2. ブログ
  3. デザインパターンを学ぶ3つのお勧め書籍

デザインパターンを学ぶ3つのお勧め書籍

システム開発の世界には「デザインパターン」という言葉があります。
これは一言で言ってしまうと「設計に関するベテラン達の知恵」です。
プログラミングや設計をする上で、ここはどうやって作ればいいだろう、というような問題に出くわすことは多いです。
単純に作るだけでなく、保守や再利用性といったことを踏まえて考えると、この問題は複雑です。
そのような問題に対して、ベテラン達が辿りついた解決法をパターンとしてカタログ化したものになります。

デザインパターンにはいくつかありますが、今回はその中で特に有名な
「GoFの23のパターン」
について解説している書籍の中から、3つを取り上げます。

・オブジェクト指向における再利用のためのデザインパターン
デザインパターンという言葉がここまで一般的になり、普及されたのはこの書籍のおかげといっても過言はないでしょう。
正にデザインパターンのバイブル的存在です。

先に注意すべき点として、元々の内容がかなり難解で、翻訳もそのせいか不明瞭になっている部分があり、この本だけでデザインパターンを勉強するのはお勧めしません。
しかしデザインパターンに関する書籍や情報はこの本に影響を受けていることが多いのは事実であり、デザインパターンについて内容だけでなく、歴史的な経緯も含めて深く学びたいならば、一度目を通して欲しい内容です。

・増補改訂版Java言語で学ぶデザインパターン入門
会社にこの本が置いてある、ということも多いのではないでしょう。
まず著者が日本人であり、洋書を翻訳した際によくある「日本語が不明瞭」といったことに悩まされないのが助かる本です。
サンプルプログラムはJavaとなっております。
初心者にも優しく解説している本で、非常に分かり易いのが特徴な本です。

プログラミング初学者にこのようなデザインパターン本の学習を薦める方がいますが、それは大きな間違いです。
そもそもデザインパターンはオブジェクト指向における設計のテクニック集であり、きちんと中身を理解するのは簡単ではありません。
間違っても、これからプログラミングを始める方が言語の入門本と一緒に買うような本ではないため、注意しましょう。

この書籍は非常に分かり易い内容であり、分かり易くするために難しい部分を削いでいるような印象を受けます。
というのも、そのパターンを使うと何が良いのか、なぜパターンを使うべきなのか?といった根本的な話はどうしても難しくなりがちですが、この本ではそのような内容を(簡易にするためにわざと)省いてるように感じます。

ある程度プログラミングや設計の経験がある上でこの本を読むと、それらの意味を自分で見つけることができるとは思いますが、そうでない方にとってはあまり理解を得られないかもしれません。

・Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本
まず注意すべき点として、この本は好き嫌いが非常に別れる内容です。
洋書にはユニークな内容やジョークの多い書籍もありますが、この本はジョーク等が非常に多い本です。

HeadFirstシリーズはちょっとおかしな絵の多用や、ふざけてるような物語形式、対話形式で話を進めていきます。
これには理由があり、いかにして書籍の内容を脳に覚えてもらうか、といった工夫なのですが、このノリが合わない方もいらっしゃるようです。
また、そのようなジョークや不思議なノリが多いせいか、翻訳も多少、不思議な日本語になっている箇所があります。
好きな人はこの本でかなり学習が捗ると思いますが、苦手な方は無理に読まないことをお勧めします。

書籍の内容ですが、物語形式に進めるため、なぜそのパターンを選んだか、という点が明確です。
デザインパターンを使う前のコード等もあるため、元のコードからどう変化したか、元のコードは何が問題だったか、といったことについても学習ができます。また、オブジェクト指向の設計・原則や基本的な考え方についても触れています。

書籍の内容自体は素晴らしいものがありますので、ユーモア溢れる本が好きな方には是非読んでいただきたい書籍です。

    カテゴリ一覧

    PAGE TOP