Итак, я начал этот новый проект и пытался включить все новые принципы проектирования, о которых читал, а именно, пытаться сделать вещи слабо связанными, тестируемыми и следовать некоторым шаблонам.
Итак, я столкнулся с необходимостью передавать слишком много фабрик / менеджеров в конструктор моих классов, что привело меня к внедрению Dependancy.
public class SomeClass
{
public SomeClass(IDBFactory factory, IOrderManager orderManager, ....)
}
Поэтому, если я использую ninject, из того, что я понимаю, я бы связал конкретную реализацию с классом.
Так что же происходит за кулисами?
NInject будет всякий раз, когда я создаю экземпляр SomeClass, он будет связывать реализацию, которую я определил в файле конфигурации?
1012 * т.е. *
Я делаю:
ISomeClass sc = NInject.Get<ISomeClass>();
и ninject сделает:
new SomeClassImpl(pass in all the implementaitons in the constructor)
правильный