O que é o Ninject?
O Ninject é uma biblioteca de software aberto que providencia uma framework de injecção de dependências (Dependency Injection ou DI) leve, fácil de integrar e de utilizar.
O padrão Dependency Injection determina que as dependências entre módulos da aplicação ou classes são determinadas por configuração ao invés de inicializadas pelo programador em código, pelo que permite aumentar o grau de desacoplamento das aplicações, garantindo maior flexibilidade na inicialização e execução da aplicação. Este padrão surge muitas vezes associado ao padrão Inversion of Control (IoC) que determina que o controlo aplicacional não é controlado na integrada pelo programador, mas sim por uma framework ou runtime.
O padrão DI é bastante utilizado em software empresarial porque, entre outras razões, ajuda a manter o desacoplamento dos módulos aplicacionais, permite manter o controlo do ciclo de vida dos objectos e facilita a implementação de testes automáticos.