私は現在、シングルトンとして実装された Cache オブジェクト (辞書のラッパー) を持っています。
シングルトン パターンに関するこの記事を読んだところです: http://ayende.com/blog/159426/design-patterns-in-the-test-of-time-singleton?key=e4eedc32-f43f-44e9-966d- 90a6ff792ddf
そして、Singleton の代わりに IoC コンテナーを活用する必要があるのではないかと考えるようになりました。シングルトンにアクセスするコードの一部をテストするのは非常に難しいと感じています。
だから私が持っている質問は次のとおりです。
キャッスル (またはそのことについては任意の IoC コンテナー) でのシングルトンのライフスタイルは、手巻きの GoF シングルトンを持つことと同じですか?
これは、私が少し奇妙な状況を作り出します
- すべての依存関係をコンテナーに登録し、
- 次に、キャッシュを生成するある種のブートストラップを解決し、
- 次に、キャッシュを別の登録としてコンテナに追加します
それはコンテナを初期化する正当な方法ですか? すべての登録が同時に行われないのは少し奇妙に思えます