应该在什么包中放置“设置”类?

时间:2010-03-26 15:40:56

标签: oop packages project-structure code-structure

我正在构建一个应用程序,但发现自己太容易创建新包而不考虑项目的结构。

现在,我试图首先在纸上重做整个项目结构。我正在使用具有公共属性的Settings类,可以作为项目周围其他几个类的设置进行访问。

现在,既然这个Settings类适用于整个项目,我不确定是否应该打包它,如果是这样,它应该存在于哪种包中?或者它应该在主应用程序类的根目录(默认包)中吗?

我一直在考虑将它放在我的utils包中,然后我再也不认为它真的是一种用途。关于如何决定这种包结构的任何策略,例如对于Settings类?

2 个答案:

答案 0 :(得分:1)

无论如何都不鼓励使用默认包(在java中,据我所知,它实际上是作为警告强制执行的),即使对于包含main的类也是如此。

除此之外,我更喜欢拥有一个config包,即使它是那里唯一的一个类。我不认为它适合utils包。

答案 1 :(得分:0)

恕我直言,你应该将它放入一个单独的低级别包中,因为许多其他类依赖它,但它(可能)并不依赖于任何东西。所以它绝对应该与主应用程序类放在一个包中。它可能位于utils包中,也可能位于同一级别的单独包中(例如config)。

“低级别”我的意思是“包依赖性层次结构较低”,其中依赖于包B的包A高于B.因此它不直接与实际包层次结构相关。关键是要避免软件包之间的依赖关系,以便在软件包之间进行这样的排序。

顺便说一句,你不应该在真正的应用程序中使用root包。