Rubyによるデザインパターンを買ってみた

Rubyによるデザイン・パターン
デザインパターンと言えば、GoFデザインパターン。この本はそのGoFデザインパターンを、Rubyでやってみようって本。GoFの本には23のパターンがあるけど、この本ではその中でよく使うであろう14パターンを対象にしている。その他にRubyのためのパターンとして3つのパターンが追加されている。


この本に出てくるGoFの14のパターンは以下のとおり。

  1. Template Method
  2. Strategy
  3. Observer
  4. Composite
  5. Iterator
  6. Command
  7. Adapter
  8. Proxy
  9. Decorator
  10. Singleton
  11. Factory Method
  12. Abstract Factory
  13. Builder
  14. Interpreter

Rubyのためのパターンとして以下の3パターン

  1. 内部ドメイン特化言語DSL)
  2. メタプログラミング
  3. Convertion over Configuration(CoC)

そして、この本のすごいところはデザインパターンを学びながらRubyも学ぶことが出来ること。Rubyのことを全く知らなくても大丈夫。なぜなら、第2章はまるまるRuby説明に費やしているから。とはいえ、この本だけではRubyは理解出来ないよね。そんな時は↓この辺も参考にしつつやってけば大丈夫。
http://www1.tf.chiba-u.jp/~shin/tutorial/index.rb
http://namaraii.com/rubytips/
そして、翻訳本であるのに非常にわかりやすいとこ。この手の本って妙に小難しく書いてあったりするけどこの本では小難しいことが全然ない。(Rubyでやってるんだから当然か、とハードルをあげてみる)っと、まだ、Template Methodのところまでしか読んでないけどw。

オブジェクト指向プログラミング言語にとってデザインパターンは基礎知識として身につけておいて置きたい。パターン自身は色んなコードを見てれば自然に覚えていくものなんだろうけど、パターンで重要なのはそれに名前をつけてみんなで共有できるってことなんだって。いや、まさにそうだよね。
どこどこでは何とかパターンつかってるからなになにって話ができるの出来ないのとでは結構大きな差だよねきっと。
ということで、うちの会社ではデザインパターン必須科目にしよう。