我听到有人说你不应该使用Service Locator进行依赖注入.那么如何在不依赖服务定位器的情况下注入依赖项呢?我想尝试IoC容器,但不想陷入反模式.
你应该只设置一切所以有一个地方所有类总是有最深层的依赖链?(如果我/它完全有意义)
我对你的所有代码都依赖于所选的IoC容器是不对的,是吗?
那么你在哪里"使用"你的容器(用于重新解析)?你如何解决所有问题,就像你的代码一样深入?它是通过每层直到前层使用接口来正确设计所有内容的一部分吗?
或者我只是错过了一点?
让我提醒你,我只是不想陷入反模式,需要一些提示/提醒它.
在编写新的应用程序或基础结构时,您是否考虑从一开始就进行日志记录?因此,有很多类导入/使用ILogger接口(内部构造函数用于注入)?
如果您已经(大部分)已经安装了应用程序,但没有考虑登录大多数或所有类,那该怎么办?您最终会如何向他们添加日志记录?
我之后添加的问题是,如果需要深入到依赖关系链中,最终可能需要在许多类中添加ILogger接口.