自己学习一段时间 java 代码了,发现现在后端的模式大多都是三层架构,自顶向下的横向切割,而且基本都是 controller、service、dao 这种结构。
其实很多时候会发现一个问题,在某些小应用中,对于 service 来说,都是直接的一句话返回而已,但是却依旧贯彻 三层 分层,即使只有一句话都固执的去使用。为什么不舍得舍去呢?只用两层难道不行嘛?在某些实践中,我就舍掉了 service,减少了很多类不说,思路都会清晰横多,因为不用去维护更多的数据和逻辑了。
而且除了横向切割以外,为什么不能够纵向切割呢?例如以前我们的结构是这样的
+ src
|--- main
|--- java
|--- controller
|--- UserController
|--- service
|--- UserService
|--- entity
|--- User
|--- filter
|--- UserFilter
|--- dao
|--- UserDao
那我们可以不可以这样恩
|--- main
|--- java
|--- user
|--- UserController
|--- UserService (个人觉得可以省掉)
|--- UserDao
|--- entity
|--- User
这样的话个人觉得可以有几个好处:
- 专注于某个模块的实现
- 全栈工程师更加方便的 “一捅到底”
- 问题定位十分方便
- 将功能分模块细化
这样的设计我觉得也很棒啊,但是后端却很少见人实践,后面的项目就打算自己实践一下。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于