小智 7
Impl后缀是命名反模式.它表示开发人员缺乏描述性地命名的努力Class.这也是IService界面命名反模式的另一面.这两种做法都是懒惰或设计选择不当或两者兼而有之.两者都是代码味道,应警告开发人员有些事情是不对的.
代码说interface Service并且class MyService implements Service应该足够的事实,其他任何事情都是重言式.使用当今的高级Java IDE更是如此.
如果您有Service接口,则以描述性方式命名实现.Service是通用的,对于接口来说是好的.HttpService,AuthenticationService具体哪些课程是好的.在两种情况下大部分都是自我记录.
如果您不能为接口和类提供唯一的描述性名称,那么您做错了.
在Mocking论证中,假设真正的类在com.company.app.service.模拟实现应该在他们自己的com.company.app.service.mock包中,可能在与Test类不同的目录结构中,如在Maven中,这将允许它们具有与非Mock类相同的名称,并且仍然记录它们是Mocks仅用于测试,并且不会污染生产代码的名称空间,并且很容易在部署中不包含该代码.
| 归档时间: |
|
| 查看次数: |
3162 次 |
| 最近记录: |