電子書籍の厳選無料作品が豊富!

最近デザインパターンに興味を持ち、調べているのですが多くのサイトは定義ばかりで、どういった利点があり、どのような時にそのデザインパターンを用いているのかがよくわかりませんでした
なのでDecoratorパターン、Adapterパターン、Observerパターン、Stateパターン、Mediatorパターンの利点と欠点を、「どのような変更に強く、どのような変更に弱いのか」という形で教えて欲しいです
宜しくお願いします

A 回答 (2件)

>機能の分散化や共通性に基づく機能の分割等のデザイン手法も


>覚えないと

この辺はこの本かな
オブジェクト指向のこころ(原題: Design pattern explained)
https://www.amazon.co.jp/%E3%82%AA%E3%83%96%E3%8 …

勿論実践して腑に落ちる所まで試さないと役に立ちません。
読むだけでは全然だめですが、知らないより遥かにましです。
    • good
    • 0

>「どのような変更に強く、どのような変更に弱いのか」


>という形で教えて欲しいです

これ、Q&Aの回答で簡単に返せる内容ではないですね。
解説本を読むことをおすすめします。

こういう情報を詳細にカタログ化したのがGOF本です。原典です。

「オブジェクト指向における再利用のためのデザインパターン 」
https://www.amazon.co.jp/%E3%82%AA%E3%83%96%E3%8 …

上の本に比べ、情報が限定されますが、分かりやすく、例が豊富なのはこれ

「増補改訂版Java言語で学ぶデザインパターン入門 」
https://www.amazon.co.jp/%E5%A2%97%E8%A3%9C%E6%9 …

デザパタはその中心の哲学として、いかにしてソフトの依存関係を
減らすかに重点が置かれています。そこを活かしていかにして
変更に強いソフトを作るのかはまた別の話です。

機能の分散化や共通性に基づく機能の分割等のデザイン手法も
覚えないと、デザパタは役に立ちません。デザパタ使えば
自動的に変更に強くなるわけでは無いです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!