|
1
185
包装组织或包装结构通常是一个热烈的讨论。以下是一些简单的包命名和结构指南:
|
|
|
2
192
我整理包裹 按功能
你错了。 例如,我更喜欢:
所以我可以通过
包可见性
. 工厂的订单应该在
|
|
|
3
43
简而言之:每个模块/功能一个包,可能有子包。把密切相关的东西放在同一个包裹里。避免包之间的循环依赖关系。 |
|
|
4
22
我更喜欢先功能后图层,但我想这取决于你的项目。考虑你的力量:
例子:
这只是一个例子。很正式。例如,它为 . 通常情况下,这是不需要的,但可能是一个好主意,如果使用不同的人。您可以让内部API扩展公共。
我不喜欢“impl”或“support”名称,但它们有助于区分不太重要的内容和重要的内容(域和API)。在命名方面,我喜欢尽可能具体。如果您有一个名为“utils”的包,其中包含20个类,请移动
|
|
|
5
13
不是真的。有很多想法,很多观点,但真正的“最佳实践”是运用你的常识! (请阅读 No best Practices 了解“最佳实践”和推广人员的观点。)
(包/模块中类之间的循环依赖关系很好,但包间循环往往会使您难以理解应用程序的体系结构,并且可能成为代码重用的障碍。特别是,如果您使用Maven,您会发现循环的包间/模块间依赖性意味着整个互连的mess必须是一个Maven工件。) 我还要补充一点 是 一个被广泛接受的包名最佳实践。也就是说,你的包名应该以你组织的域名开始,顺序相反。如果您遵循这个规则,您就可以减少由于您的(完整)类名与其他人的类名冲突而导致问题的可能性。 |
|
|
6
9
我见过一些人提倡“按功能包”而不是“按层包”,但我多年来使用了不少方法,发现“按层包”比“按功能包”好得多。
Java Package Name Structure and Organization 但我的标准包结构是:
哪里: revdomain公司 反向域,例如com.mycompany 模块类型 模块名 层 [模型| ui |持久性|安全性等] 例如,wicket、jsp、jpa、jdo、hibernate(注意:如果层是model,则不使用) 特征 例如,会计 例如,折旧 *如果moduleType是一个应用程序,那么有时“app”被省略了,但是将它放在那里可以使包结构在所有模块类型中保持一致。 |
|
|
7
6
另一方面,我让一个同事为他所做的几乎每件事创建了一个新的包。他想要的每个不同的MVC都有自己的包,而且MVC集似乎是同一个包中唯一允许的类分组。我记得有一次他有5个不同的包,每个包中只有一个类。我认为他的方法有点极端(当我们无法处理时,团队强迫他减少包数),但是对于一个非平凡的应用程序,将所有内容放在同一个包中也是如此。这是你和你的队友必须为自己找到的一个平衡点。
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |