依赖注入 – 避免依赖性携带

在编码时,我经常会遇到以下模式:

-A方法调用一个方法(Fine),但被调用方法/ callee接受参数,因此在wrap方法中,我传入参数.问题是,这种依赖性可以继续下去.我怎么能避免这种情况(任何示例代码赞赏)?

谢谢

解决方法

仅仅因为较低层组件需要它而传递参数是泄漏抽象的标志.它通常对 refactor dependencies to aggregate services更有效并隐藏接口后面的每个依赖项.

横切关注点(通常是传递参数的最常见原因)是best addressed by Decorators.

如果您使用具有拦截功能的DI容器,您可以利用它们非常有效地实现装饰器(有些人将其称为容器的AOP功能).

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...