オブジェクト思考設計における、よく似た問題に対する解決策のこと。
デザインパターンを学ぶメリットは以下の2点と考えています。
1つ目は、設計時に直面した問題に対して、設計者が独自で解決策を考えなくとも、先人達による解決策を参考にすることができることです。
2つ目は、パターン名などの用語を覚えることで開発者同士の会話の抽象度をあげることができるようになることです。
例えば、「このクラスはFacadeになっています」や 「ここはAdapterで再利用しましょう」など。
デザインパターンはあくまで問題に対する解決策なので、
デザインパターンを学ぶことは考え方を学ぶことだという意識を持つ必要があります。
デザインパターンありきの設計にしてしまい、本質的な問題解決が後回しになってしまわないように注意しましょう。
最近ではMVC、DAO、DTOなどデザインパターンにも色々なものが出てきました。
今回から解説していくのは、GoFのデザインパターンになります。
GoF(Gang of Four)と呼ばれる4人組はデザインパターンという用語を初めてソフトウェア開発に導入し、書籍『オブジェクト指向における再利用のためのデザインパターン』を書きました。
その書籍の中で紹介されている23種類のパターンをこれから記事に残していこうと思います。