Есть одна небольшая заминка (хотя, возможно, это я не понимаю что тут к чему).
Пусть имеем такой код (конфиг для Windsor'а очевиден, приводить не буду):
class c1 {
public c1(c2 a) { ... }
...
}
class c2 {
public c2(c3 b) { ... }
...
}
class c3 {
public c3() { ... }
...
}
Пусть используется с1. Как только его запросят у IoC-контейнера — тут же будут инстанцированы и с2 и с3. Но что, если с2 и с3 используются только в редких случаях? Получается использование ресурсов вникуда...
Особенно это хорошо заметно, если в качестве компонентов брать формы в WinForms-клиенте. Фактически, получается, что все формы создаются сразу, что создает заметную задержку при старте. Хотя некоторые из этих форм вызываются один-два раза за все время эксплуатации приложения.
Это действительно проблема, или я не заметил какого-то простого решения вопроса?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>