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

MyEnigma

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

C++によるデザインパターン19: Stateパターン

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

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

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

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

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

Stateパターン

Stateパターンは、あるクラスの状態を

クラスとして表現するデザインパターンです。


あるクラスにおいて、複数の状態があり、

その時々の状態に応じて処理を行う場合はしばしばありますが、

Stateパターンでは、それぞれの状態をクラスで表現します。


状態を持つクラスは、それぞれの状態クラスを

抽象クラスの形で保持しておき、

抽象クラスのAPIを使用することで、

その時の状態を考えずに処理を実施することができます。


ちなみに、Stateパターンのクラス構成は

Strategyパターンと同じになります。

C++によるデザインパターン10: Strategy パターン - MY ENIGMA

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

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

cpp/State.cpp at master -AtsushiSakai/cpp