これは通常のスタックオーバーフローのこれまたはその方法の質問ではないと思いますが、おそらく誰かがこの質問に対するより良いアプローチを教えてくれるでしょう。
値に応じて異なる「エンジン」を継承し、すべてのエンジンに対して同じオブジェクトを返すインターフェイスを作成しました。これは、他の州の他のアプリケーションと統合されている短期間のフラットレンタルアプリケーションです。明らかにそれぞれに API があるため、アプリケーション内でそれぞれ異なる方法で送受信する方法を知っていなければなりません。すべての API のオブジェクト。私が正確に行うことは、このようなものを初期化することです。
$flat = new API(array('engine' => 'some_api')); // the array has some more information inside but it is unimportant for the question
これで、それぞれが異なる API 用の ID のリストができました。何かのようなもの
$list = array(1 => 'api_1', 2 => 'api_2'); // and more ...
それでは質問です!
APIオブジェクト内に可能なすべてのエンジンを保持し、IDごとに、APIオブジェクト内で初期化された「エンジン」をすでに持っている(すべて$list
がすでに割り当てられているため、おそらく速度/パフォーマンスが向上する)またはすべきforeach ID は、適切な「エンジン」のみを初期化して新しい API オブジェクトを作成します。(速度/パフォーマンスは低下しますが、メモリ管理は改善されるはずです)。
API オブジェクトは反復の範囲外では意味を持たないため、それを保持する必要はありませんが、2 つまたは 4 つのオブジェクトではなく 1 つのオブジェクトを開始するだけで、ガベージ コレクションのオーバーヘッドが全体的に少なくなる可能性があります。私が持っているIDの量のために。
何かご意見は?