我正在为我的管道使用责任链设计模式。我发现的一个问题是,随着我添加更多链,配置对象变得越来越大。本质上,我的配置对象正在变成一个巨大的单例。有没有有效的方法来处理这种情况?
细节:
我目前的设置是
handler.next = handler2
handler2.next = handler3
...
我通过将配置对象传递给它来使用链。
handler.HandleRequest(config)
配置对象具有处理程序所需的所有配置信息,因此随着我添加更多链而变得越来越大。
可能的解决方案:
在这篇文章中,最好的答案是使用依赖注入。
但是,我不确定如何在不大幅改变设计的情况下在责任链设计上使用依赖注入。
有人可以帮我解决这个问题吗?谢谢!