複数の数学ソルバーを使用するゲーム/シミュレーション アプリケーションに取り組んでいます。それぞれに既存のアダプタ クラスがあります。これらのアダプター クラスは、アプリケーションのすべてのレンダリングおよび機能情報を提供します。
大まかに言えば、アダプター オブジェクトを保持してインスタンスを表し、メソッドを呼び出して次のことを実現します。
- レンダリングデータを生成します。
- オブジェクトの状態を変更します。それを行うには機能が多すぎます。
- さまざまな目的でデータ モデル情報を読み取ります。
問題は、これらのクラスが一定期間にわたって成長し続け、あまりにも多くの情報と責任を負うことです。
私の質問は、これらのクラスをより適切に再設計/再構築するにはどうすればよいかということです。私が見るべきデザインパターンはありますか?
編集:リクエストに応じて、アダプタークラスが行うことの広範なリストを以下に示します。
数学ソルバーに保存されている現在のデータと同期します。
アプリケーションのデータ モデルと同期します。元に戻す/やり直しなどの場合。
オブジェクトの状態を変更する: 形状を変更します。これは最も重要であり、それを実現するために 50 以上のさまざまな機能があります。すべては、パラメータを使用した自己完結型の単一のサービス コールです。ここにインターフェイスとファクトリを挿入しようとしていますが、関数のシグネチャに互換性がありません。
数学ソルバーのデータ モデル情報を取得します。getChildern などのように
- 可視性とその他のグラフィック プロパティを変更します。