开发中一定需要 service 接口和 serviceImpl 吗

2019-08-17 10:54:25 +08:00
 vanishxiaoma

开发中一定需要 service 接口和 serviceImpl 吗

感觉不用接口直接写实现开发更加方便

13987 次点击
所在节点    Java
36 条回复
cabing
2019-08-17 17:06:42 +08:00
大部分情况是没有必要。但是评估下项目的重要性和生存时间,迁移的可能性。

有时这种抽象真的是很有用,特别是迁移。
lihongjie0209
2019-08-17 17:45:58 +08:00
看你写代码的方式了, 比如说我一般从 controller 开始写, 这时候我需要依赖一个 service, 最简单的方式就是创建一个 interface, 然后接着把 controller 的逻辑写完. 最后实现这个 interface.
也就是自顶向下的实现了.

如果你是从 dao 开始写, 那么确实没有什么必要
srx1982
2019-08-17 18:45:11 +08:00
反正我一般不写
xalilo
2019-08-17 22:45:33 +08:00
@lihongjie0209 从 controller 开始写,空的 Impl 方法也不影响你操作啊
zhuifeng1017
2019-08-18 00:04:28 +08:00
表结构定义好后,controller,service,mapper,entity 都代码自动生成了,不要太简单。自己写的代码没几行
lihongjie0209
2019-08-18 10:32:24 +08:00
@xalilo #24 你这么说也可以, 看个人习惯
GiantHard
2019-08-18 10:49:29 +08:00
如果你不需要单元测试,就不需要使用接口
cnzjl
2019-08-18 16:28:15 +08:00
现在没啥必要吧,改的时候也烦,改完 interface 改 impl。
james122333
2019-08-18 21:10:16 +08:00
我只写两层 controller service
mapper entity 的就是把事情复杂化而已
两层分刚刚好 还可以很容易前后端分离、混合双用
taaaang
2019-08-19 08:45:59 +08:00
没必要,个别类考虑到多态的可以写。interface 是个好东西,但前提是不滥用。
BeFun
2019-08-19 10:05:44 +08:00
@luckylo 一样一样,五六年前的代码改的非常累
9Rubi
2019-08-19 11:15:10 +08:00
多 profile ,这就很有必要了。
luckylo
2019-08-19 11:15:16 +08:00
@BeFun 还有,代码不复用,一个 service 实现类 10000+行代码,如果真需要接口,完全可以拆成多个实现类,代码少一点,同一个类函数调用的跳转也会舒服点。个人觉得,接口存在的必要是方便多个实现类存在的,不然 java 的多态就是一句空话。既然不会存在多个实现,还写一堆无用代码,打包时间变长不说,最主要的是影响阅读
vanishxiaoma
2019-08-23 16:26:41 +08:00
好吧, 被客户要求必须要有 service 接口了
luckymao
2019-09-05 17:54:34 +08:00
我觉得在协作开发时先写接口还是好的,不然别人写的时候都没有接口可调用如何继续写下去呢
vitoaaazzz
2020-05-29 17:12:24 +08:00
@passerbytiny
10 年前为什么一定要?能不能详细说下,多谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/592647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX