追加された行はこのように表示されます。削除された行はこのように表示されます。コードのサポートも続行する必要があります。シミュレータでも高速に動作させる必要がある場合、その対応も必要になります。このページでは、このような状況におけるデザインの選択肢を提示します。化すべき処理を抽象化するクラスを作成します。このクラスは抽象クラスですから、インスタンスを作成することはできません。用のコードをそれぞれ実装する派生クラスを作成することになります。それらの各種環境を識別して適切な派生クラスのオブジェクトを返すファクトリクラスユーティリティも作成します。することで、呼出し側で実行環境を気にせずに処理を呼び出すことができるようになります。おいてどのような実装をすればよいかになります。準備し、列挙値やサービス関数を用意します。環境なのかがわかるわけですね。ページあたりにサンプルコードがあるのでそちらを参照してください。以下のように実装できます。返すようにすれば良いでしょう。コードで動作させるようなことも可能です。コードで動作させて体感速度を比較する、などといったことも可能です。派生クラスをどのように実装するかです。使用するということだけはコメントしておきます。パターンを使用しているだけなので、難しいことはないでしょう。これはあくまで1つの選択肢としてのデザインですから、他の方法と比べて優れているかどうかといった主張をするものではありません。過去に書いた以下の情報をベースに作成しました。上記デザインのクラス図も掲載しているので参考にしてください。以下の場所にあります。このページの情報に関する誤りや追加情報がありましたら、コメントをお願いします。