Autumn SALE
State

State を PHP で

State 振る舞いに関するデザインパターンの一つで オブジェクトの内部状態が変化した時にその振る舞いを変更することを可能とします

このパターンは 状態に関連した振る舞いを個別の状態のクラスへ抽出し 元のオブジェクトが作業を自分で行わず これらのクラスのインスタンスに委任することを強制します

複雑度

人気度

使用例 PHP では State パターンは switch 演算子に基づく巨大で厄介な状態機械をオブジェクトに変換する時に時々使用されます

見つけ方 オブジェクトが その外的に制御される状態によって振る舞いを変えるようなメソッドを持っていたら State パターンを識別できます

他言語での State

State を C# で State を C++ で State を Go で State を Java で State を Python で State を Ruby で State を Rust で State を Swift で State を TypeScript で