Estoy escribiendo un programa de análisis de tamaño medio (5-10kloc) en MATLAB (no es mi decisión), y estoy tratando de usar la inyección de dependencia para hacer que mi código sea más comprobable. Creo que entiendo el modelo básico de inyección de objeto/constructor, pero estoy confundido sobre cómo se escala el gráfico de dependencia.Inyección de dependencia sin marco
Por ejemplo, si tengo el objeto A, que tiene un objeto B, que tiene un objeto C, y el objeto C tiene una dependencia que necesita ser inyectada, ¿necesito pasarlo a través de toda la cadena? Eventualmente, dado que este es un programa de análisis de datos, básicamente todo vuelve a un objeto/método de AnalyzeData, ¿significa esto que ese objeto tiene que tener inyectadas todas las dependencias de todo el programa?
Quizás la respuesta sea simplemente utilizar ServiceFactory/ServiceProvider en este caso, pero me gustaría saber si es posible escalar muchas dependencias hasta un gran gráfico de objetos sin un marco.
Además, se fomentan las correcciones en mi pensamiento/redacción/fundamentos: básicamente he aprendido la mayor parte de esto a través de Google/HN/SO.
¿Qué significa HN? – iddober
Esto no es de ninguna manera una respuesta, pero de todos los que podrían terminar en esta pregunta, eche un vistazo al (bastante agradable) marco [DI DI para Matlab] (https://github.com/mattmcd/mdepin), escrito por Matt McDonnell. Esto debería ponerlo en marcha ... – Kris
Sigue el comentario de Kris, aquí hay un blog sobre el tema que está dirigido a MATLAB (y que usa el marco DI de Matt MCDonnell): http://blogs.mathworks.com/developer/2016/02/24/dependency-injection/ –