我和我的研发团队维护着庞大的代码库。我们已经将业务逻辑分为多个包。其中一些具有相同名称的类。
如您所料,当在同一Java文件中引用两个类时,名称冲突。
例如:
com.myapp.model (package)
- Device (class)
- ...
com.myapp.data (package)
- Device (class)
- ...
我们就治疗这些病例的最佳实践进行了辩论,并提出了以下选择:
第一种选择
重命名类,添加前缀
ModelDevice DataDevice
第二选择
同时引用包和类的完整名称
com.myapp.model.Device com.myapp.data.Device
在代码管理和可伸缩性方面,更正确的是什么?
我们目前正在混合使用这两种方法,并开始出现不一致之处
如果偶尔出现,则可能无关紧要-如果它是重复出现的模式,则我可能会更精确地命名类,以防止其变得混乱。
—
assylias,2016年
您不知道我讨厌多少
java.util.Date
,java.sql.Date
尤其是因为它java.sql.Date
是java.util.Date
数据层的子类,因此很好地滑出了数据层(并且不能很好地序列化为JSON)。
选项2.1 即使未引用其他名称,也请始终使用完全限定的名称
—
-Caleth