読者です 読者をやめる 読者になる 読者になる

MyEnigma

とあるエンジニアのブログです。#Robotics #Programing #C++ #Python #MATLAB #Vim #Mathematics #Book #Movie #Traveling #Mac #iPhone

C++によるデザインパターン8: Abstract Factoryパターン

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

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

オブジェクト指向における再利用のためのデザインパターン

オブジェクト指向における再利用のためのデザインパターン

  • 作者: エリックガンマ,ラルフジョンソン,リチャードヘルム,ジョンブリシディース,Erich Gamma,Ralph Johnson,Richard Helm,John Vlissides,本位田真一,吉田和樹
  • 出版社/メーカー: ソフトバンククリエイティブ
  • 発売日: 1999/10
  • メディア: 単行本
  • 購入: 21人 クリック: 711回
  • この商品を含むブログ (210件) を見る


Abstract Factoryパターン

Abstract Factoryパターンは、

共通の部品で構成された対象に対して、

抽象部品クラスを作成し、

その抽象部品クラスを作成する

抽象工場クラスを作成し、

それぞれの対象に関して

これらの抽象クラスを実装するサブクラスを作成する

デザインパターンです。


共通の部品を使用するクラスを

抽象部品クラス&抽象工場クラスを利用して

作成することで、クライアントソフトは

部品の詳細な中身を気にせずに利用できます。

また新しい部品群と工場を追加することも簡単になります。


サンプルプログラムでは、

仮想の食事クラスとその食事の工場クラスを作成し、

日本食とアメリカ料理のオブジェクトを作成していますが、

Mainコードをみると分かる通り、

オブジェクトを変化させるだけで、コードの中身を考えずに、

2つの国の料理を食べることができています。

C++によるサンプルコード

下記のGitHubページにて公開しています。

cpp/AbstractFactory.cpp at master AtsushiSakai/cpp

参考資料

myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com


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

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

オブジェクト指向における再利用のためのデザインパターン

オブジェクト指向における再利用のためのデザインパターン

  • 作者: エリックガンマ,ラルフジョンソン,リチャードヘルム,ジョンブリシディース,Erich Gamma,Ralph Johnson,Richard Helm,John Vlissides,本位田真一,吉田和樹
  • 出版社/メーカー: ソフトバンククリエイティブ
  • 発売日: 1999/10
  • メディア: 単行本
  • 購入: 21人 クリック: 711回
  • この商品を含むブログ (210件) を見る