Jac*_*ine 10 java oop spring naming-conventions guice
这是对Zed Shaw很久以前在博客中发表的一些评论的回应.
然后专家们会漫无目的地执行他们的Flaming Tower of Babel,没有任何评论,非常复杂的模拟测试,确保每个单一类都有一个接口,并以"Impl"结束每个班级,因为,这是最好的做法.
我以相同的方式使用Spring和Google Guice,我注意到这些框架确实使用了Impl后缀,但是很少.在我的代码中,我到处都使用接口,因为我被告知它使模拟更容易等.我对这个问题有天真的理解吗?(也许模拟框架可以使用抽象类或类,我不知道.我从未尝试过)对于我的具体实现,我选择了Spring的约定,在实现的名称前加上单词Default.
e.g. BottleOpener (interface) is implemented by DefaultBottleOpener (class)
Run Code Online (Sandbox Code Playgroud)
这个问题的最佳做法是什么?
UPDATE1我发现从方法返回一个接口很有用,因为我总是可以返回一个匿名类.
duf*_*ymo 17
这不仅仅是嘲笑.在Spring的情况下,它是关于动态代理和面向方面的编程.这就是Spring如何处理所有类型的事务,远程处理和方面.
我使用接口来存储库,服务等,但我没有将接口放在模型对象或其他任何实现不太可能改变的地方.
接口将API与它们的实现方式分开.如果您的实现没有改变,那么界面没有多大意义.
Zed Shaw是一位了不起的作家和开发人员,但他带着他的话说了几句.我认为他沉迷的一些夸张的夸张是娱乐价值.他有一个观点("不要做事只是因为有人自称是一个权威人士告诉你这是'最佳实践'"),但他所说的方式是部分剧院.
归档时间: |
|
查看次数: |
1020 次 |
最近记录: |