Me gustaría intentar usar un marco DI/IoC por primera vez en un proyecto pequeño pero en crecimiento, y no quiero perturbar demasiado el proyecto al introducir dependencias voluminosas. El proyecto en sí está destinado en parte a ser utilizado como una biblioteca en otros proyectos, y no quiero molestar a los usuarios con la gestión de dependencias adicionales. También es una cuestión de gusto: creo que el tamaño de un componente debe ser proporcional a la cantidad de servicios que realmente necesito. Odio incorporar un componente voluminoso con dependencias propias, solo para usar una pequeña parte de él.Nombre un marco de inyección de dependencia simple
Por lo tanto, para .NET, hay un pequeño marco DI/IoC que se compila en una única DLL sin dependencias que no sean bibliotecas estándar, que (si es necesario) podría incrustarse directamente en el ensamblado que la utiliza, y enfatiza el cableado basado en código/fluido (en lugar de XML)? No debe requerir .NET framework 4.0.
No necesita una biblioteca en absoluto si solo desea la Inversión de control. Solo inserte sus dependencias a través del constructor de su clase. –
Ahora mismo eso es lo que estoy haciendo. Sin embargo, el cableado de las cosas está empezando a ser un poco engorroso y sé que empeorará a medida que el proyecto crezca. (Es un proyecto de compilación compuesto por numerosos componentes y debería ser posible intercambiar componentes por otros ...) – Qwertie
Estoy de acuerdo con Robert. Al inyectar dependencias en el código, también obtiene el beneficio del compilador. Normalmente cableo mi aplicación en el método Main(). –