それはラッパーオブジェクトですか?または状態オブジェクト自体?
例をいくつか見てもらえますか?
状態パターンでは、ビジネス ロジックは、ある状態から次の状態への遷移に関係しています。2 つの選択肢があり、どちらも等しく有効です。
状態変更ロジックは状態オブジェクト自体に存在する可能性があるため、新しい状態オブジェクトをシステムに追加するのは非常に簡単ですが、サブクラスをより緊密に結合します。
または、状態変更ロジックがコンテキストに存在する場合があります。したがって、州自体はお互いを認識していません。新しい状態を追加するには、コンテキストを変更する必要があります。
良い例を示してくれるオンライン パターンの良いリソースがいくつかあります。たとえば、このサイト。または、これには特定の c# の例が含まれています。
基本的に、状態の変更に関するビジネス ロジックが必要です。これには、「state_entered」トリガーと「state_leave」トリガーが含まれる場合があります。
状態がそれ自体に入る可能性がある場合に、「state_idle」トリガーが必要になる場合があります。
例には、それを基にするためにあなたの側からのコードが必要です。
答えは具体的なユースケースに依存する可能性があるため、質問をより具体的にしてください。ただし、通常は、状態がラッパー オブジェクトによって使用される共通の内部インターフェイスを実装し、一種のパブリック インターフェイスを実行することを期待します。そのため、ビジネス ロジックは分割され、基本的に両方のタイプに配置されます。