我们正在一个项目中工作,其中将有一个共享配置,需要由解决方案的多个部分访问。
负责 Config 模块的团队实现了一个只包含 2 个类的接口。2 个类,负责获取、缓存和提供特定值(通过属性)。
我觉得这是一个糟糕的设计,在我看来,最好定义一个可以通过接口访问的所有配置值,而不是实现这种行为的实际类。
在我看来,对于诸如获取配置值之类的事情,提供一个接口来显示我将能够访问哪些值而不是类(例如属性不受接口控制的实现)会更合乎逻辑。
-edit- 界面如下所示:
public interface IConfigurationResolver
{
GeneralConfiguration GetGeneralConfiguration(string Id);
SpecificConfiguration GetSpecificConfiguration(string Id);
}
它由一个类实现。我的意思是这个接口实际上只是定义了两个类,每个类都负责提供配置值,而我认为如果接口不关心这些细节并且应该自己提供配置值会更好
这些都是非常有经验的开发人员,而我不是,那么您对此有何立场?