学習の栞

学びたいことと、学ぶべきことと、学べることの区別がついてない人間の進捗管理

デザインパターン勉強しました。

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

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

 

  上の本を購入してデザインパターンを勉強してみました。

 

デザインパターンを一通り見た印象は「オブジェクト指向の活用例をまとめたもの」で、デザインパターンはそれ自体を参考にしてプログラムを設計するという使い方でなく、自分の考えているやり方を他人に説明するための語彙として持っておくものという印象を受けました。

 

本の中で繰り返し言われていたことを纏めると

・外部から見えるべき機能とそうでない機能を区別すべき。

・外部から呼べる機能をAPIとして抽象クラスにまとめ、具体的な機能についてはその派生クラスで実装すべき。

ということでしょうか。

 

23のデザインパターンが紹介されていたのですが、その殆どが上のような考え方をもととした設計のように感じられました。

 

オブジェクト指向言語を勉強してみたはいいものの、オブジェクト指向とは何で、言語の機能をどう活かせばいいのかわからない。そういう層が読むと面白い読物だと思います。

 

さて、この本についてなのですが、私はあまりいい本だとは思えませんでした。本の中で説明が前後している箇所があります。分からないところがあっても、それを飛ばして読める人ならばいいのでしょうが、分からない箇所があったらつど立ち止まって考えるタイプの人間には向いていません。また、せっかく抽象的な話をして理解しかけていたところに、例え話を入れて分かりにくくしている箇所もあります。人によって向き不向きはあるのでしょうが、私には向いていないようでした。

 

一通りデザインパターンは把握できた、ことになるんでしょうかね。

GoF本......読むべきでしょうか。