将“导出”组织如下是否有意义?不确定它是否足够常见或者是所有推荐的练习。
org.mycompany.export.generic-export-utilities
org.mycompany.productA.export.productA-specific-export-logic
org.mycompany.productB.export.productB-specific-export-logic
答案 0 :(得分:1)
我认为这是一个很好的问题。
嗯,组织包的好方法是将代码分开“域”。没有应用程序的上下文,很难推荐一个好的包组织。但我会尽力帮助你。
请参阅此示例。您有一个管理学生和客户的系统。组织的好方法:
org.mycompany.student
org.mycompany.student.dto
org.mycompany.student.service
org.mycompany.customer.dto
org.mycompany.customer.service
糟糕的方式#1:
org.mycompany.dto.student
org.mycompany.dto.customer
org.mycompany.service.student
org.mycompany.service.customer
糟糕的方式#2:
org.mycompany.student.dto-student
org.mycompany.student.service-student
org.mycompany.customer.dto-customer
org.mycompany.customer.service-customer
在这两种情况下,我们有一些包名称重复。
所以,回到你的问题,也许这对你更有意义:
org.mycompany.export.utils //I'm outside of the products subpackages, so this means that this is the place for generics utilities
org.mycompany.productA.export //i'm already in the export inside the productA, this organization already show that the classes inside are specific for productA
org.mycompany.productB.export //i'm already in the export inside the productB, this organization already show that the classes inside are specific for productB