Spirng项目分层需要接口层吗?

2021-03-08 11:59:43 浏览数 (1)

很多小伙伴都做过Spring项目(基本都是SpringBoot项目),在项目分层上,有些项目带了接口层,有些项目没有,需要接口层吗?

分享一位同学的疑问:

接口层原因

其实早期Spring实现注入、AOP等,都是JDK自带的动态代理,JDK动态代理要求必须使用接口,所以早期的项目都是有各种接口,很多项目都一直延用,很多老程序员也都养成了习惯。现在Spring集成了cglib,不需要接口了也能实现注入,AOP了。

还有另一个原因,就是程序员会觉得有了接口层,项目多少能用点设计模式,看起来高大上一点。

是否有必要?

个人觉得没必要,作为业务逻辑来说,面向接口编程费力不讨好。我做过的很多项目,都没加接口层,也没啥问题。

接口一般配合上设计模式,写一些通用逻辑很好用,写业务功能没必要。

当然,用接口也没问题

0 人点赞