現在、MVCアプリケーションを最適化しています。オブジェクトはに作成されています。でもfunction
に一つだけのオブジェクトが必要ですが、他のオブジェクトも作成され、このCでオブジェクトを作成する
private readonly IUnitOfWork _unitOfWork;
private readonly GenericRepository<User> _user;
private readonly GenericRepository<UserDevice> _userDevice;
public UsersController()
{
_unitOfWork = new UnitOfWork();
_user = new GenericRepository<User>(_unitOfWork);
_userDevice = new GenericRepository<UserDevice>(_unitOfWork);
}
このようなものは単純な例ですが、実際にで作成するより多くのオブジェクトがあります。オブジェクトが必要なときにのみ作成するパターンを実装したいと思います。
すべてのオブジェクトを作成する必要があるAbstract Factory Pattern
を使用することを私の心に残していますが、実装方法はわかりません。皆さんは問題のための他の解決方法を提案することができます。パターンはちょうど私の考えです。おかげ
編集
method
でオブジェクトを使用して、需要手段では、私だけ_user
オブジェクトを必要とするように、なぜ_userDevice
作成はありますか?
"オブジェクトは必要なときにのみ作成する必要があります" - どこに?いつ?あなたの質問は明確ではありません。 「必要なとき」とは、1)実行中の特定の時間に2)を意味する可能性があるため、あいまいなフレーズです。コード内で呼び出されることはありませんが、コード内で静的に定義されています。コード。 –
あなたのクラスがたくさんのオブジェクトを必要としますが、それらを時々しか使用しない場合は、[Single Responsibility Principle](https://en.wikipedia.org/wiki/Single_responsibility_principle)に違反している可能性があります。 [SOLID](https://en.wikipedia.org/wiki/SOLID_(object-oriented_design))の原則を念頭に置いてデザインを見直したいかもしれません。しかし、実際にあなたの質問に答えるには、[Lazy](https://msdn.microsoft.com/en-us/library/dd642331(v = vs.110).aspx)を使用して彼らは実際に必要ですか? –
これらのオブジェクトは作成するのに費用がかかりますか?コードをプロファイリングして最適化していますか? –