首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大型配置的责任链

大型配置的责任链
EN

Stack Overflow用户
提问于 2013-03-05 05:37:29
回答 1查看 923关注 0票数 0

我在我的流水线中使用了责任链设计模式。我发现的一个问题是,随着我添加更多的链,配置对象会变得越来越大。从本质上讲,我的配置对象正在变成一个巨大的单例。有没有有效的方法来处理这种情况?

详细信息:

我目前的设置是

代码语言:javascript
复制
handler.next = handler2
handler2.next = handler3
...

我通过向它传递一个config对象来使用这个链。

代码语言:javascript
复制
handler.HandleRequest(config)

config对象包含处理程序所需的所有配置信息,因此随着我添加更多的链,它会变得越来越大。

可能的解决方案:

在这篇文章中,最好的答案是使用依赖注入。

Which design patterns can be applied to the configuration settings problem?

然而,我不确定如何在不对设计进行实质性更改的情况下在责任链上使用依赖注入。

有人能在这个问题上帮我吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2013-03-05 20:10:56

我认为你们正在尝试一起做一些不属于一起的事情。

如果您需要提取应用程序不同部分的设置/配置值,为什么要尝试在一个地方读取它们?

对于每个需要某种设置的组件,我更喜欢小的“设置对象”。我通常从包含所有硬编码默认值的对象开始,并在必要时从这些基本设置派生。派生对象可以从任意来源读取(大多数时候是app.config文件,但我也使用数据库和web服务)。

这是一个更详细的blog post that describes settings objects

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15211603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档