こんにちは、エンジニアの王です。 【PHPで学ぶデザインパターン入門】も、第1回「Strategyパターン」、第2回「Decorator」に続き第3回目です。 今回の「State パターン」は、「状態」に関わる処理を行うときによく使うパターンだということを名前からでも用意に連想できると思います。 人間には「喜怒哀楽」、物質には「固体・液体・気体・プラズマ」、信号には「赤青黄」とそれぞれ状態があるように、物にはさまざまな「状態」があります。そして、状態が変われば物の振る舞い方も変わってくる場合が多いのです。 「State パターン」は、ころころ状態が変化する場合でも管理のしやすいコードを書くための一つの設計手段です。 「信号機」クラスを作ってみる では、「信号機」クラスを例に考えてみましょう。 「信号機」クラスは、以下のメソッドを持っているとします。 to_green(緑に変える) to_r
![【PHPで学ぶデザインパターン入門】第3回 Stateパターン | 株式会社LIG(リグ)|DX支援・システム開発・Web制作](https://cdn-ak-scissors.b.st-hatena.com/image/square/3f7db3a3575996ccc086b6a97a15649dda230062/height=288;version=1;width=512/https%3A%2F%2Fliginc.co.jp%2Fwp-content%2Fuploads%2F2015%2F01%2Fstate1.png)