背景:我正在使用Google Guice,因此通过配置类更容易,但是我认为这不是最好的方法。
我有一个存储一些路径的配置类:
class Configuration{
String getHomePath();
String getUserPath();
}
我也有一个需要“homepath”的类“a”和一个需要“userpath”的类“b”。
通过类a和b的构造函数传递配置类还是仅通过特定路径传递更好?
最佳答案
您的问题没有一个单一的答案,只有根据您的具体情况选择的选项。
如果您知道Configuration
类将增长和(如果您的A
和B
类很可能会使用更多),则将整个Configuration
对象传递给其构造函数。注意:我知道这违反了YAGNI原则,但有时您可能知道您会需要它;-)
否则,您可以考虑对路径使用@Named
注入,以便将A
和B
类的依赖性降低到最小,这是一种好的设计实践。