「状態(State)」パターンと「戦略(Strategy)」パターンのクラス構造は非常に似ているが、意図の違いは何か。

構造(ContextとInterfaceとConcreteClasses)はほぼ同じだが、Stateは「状態遷移に伴う振る舞いの変化」を隠蔽・管理し、Strategyは「互換性のあるアルゴリズム」をクライアントが選んで使う点に主眼がある。