State パターン (状態を表すオブジェクトを用意し, 内包するその状態オブジェクトを切り替えることにより, 処理内容 (振る舞い) を変えられるようにする)¶ [State] = [状態] を意味する. このパターンでは, ある物についての各状態をそれ対応した各クラスで表現する. (つまり, 状態一つにつき, クラス1つで表現する) 通常, 条件 (状態) に一致するかどうかの処理は, if 文を使用し, コーディングするが, その条件分岐が多い場合, 1つの条件で処理するコード量が多い場合, また同じ条件分岐が複数の個所に点在する場合など, メンテナンスしづらいものとなってしまう. しかし, このパターンを適用すると, その状態を個々のクラスで表現するため, 単純明快となる.