buto > /dev/null

だいたい急に挑戦してゴールにたどり着かずに飽きる日々です

デザインパターン入門 Abstract Factory

デザインパターンとは

今さら聞けない!デザインパターンとは【初心者向け】

デザインパターンとは、JavaRubyなどのオブジェクト指向の言語で使われる設計パターンのことです。過去のエンジニアが解決してきた方法(設計)が、デザインパターンとしてまとめられているのです。

読みやすく、ムダのないコード書いてみたい… 行き当たりばったりのコーディングとはお別れだ!!

Gang of FourGoF

GoFのデザインパターンまとめ あらゆるコードのパターンは23種類に落ち着く、らしい! 早速、1つ目のパターンを見てみる

Abstract Factory

抽象クラスを作成し、実装は抽象クラスを継承したクラスで行う クラスの追加・変更があった時の修正が最小限にできる

例えば、ECサイトで 「商品にはid、商品名、価格は絶対必要」だけど、今後セールも開催したいなって時は 商品を抽象クラスにして、セール対応をする時に商品クラスを継承すればOK

f:id:butorisa:20201020170359p:plain

セール商品もid、商品名、価格(定価)は必要だから商品クラスから引き継げると楽

絶対置き換わる、削除されないプロパティは抽象化しておくと継承で再利用できるから便利 1クラスになんでもかんでも詰め込まないから変更に強い