举个例子:前端请求的 xxxRequest
应该放哪呢,放 web
还是 service
,放 web
的话,service
应该是不能访问的,所以怎么约束呢?
再极端一点,dao
不能调用 service
吧,但项目中最不缺的就是临时方案,所以怎么约束呢?
2. 多模块(重点来了)
优势
约束能力,模块间引用关系是明确的,项目架构更清晰。推荐一个 Spring Boot 基础教程及实战示例:https://github.com/javastacks/spring-boot-best-practice
劣势
首推阿里COLA:https://github.com/alibaba/COLA
项目地址:https://github.com/AmosWang0626/think-cola
3. 怎么选?
作为应用级架构,小项目,2~3个人开发的,单模块可能就足够,前提是每个人都对架构有认识,个人约束力很重要;
其他均建议多模块,长期来看,约束是第一生产力,架构直接影响重构的成本。
引用《代码精进之路:从码农到工匠》中的两段话结尾:
-
要记住,留给公司一个方便维护、整洁优雅的代码库,是我们技术人员最高技术使命,也是我们对公司做出的最大技术贡献;
-
【防止破窗】首先我们要有一套规范,并尽量遵守规范,不要做“打破第一扇窗”的人;其次,发现“破窗”要及时修复,不要让问题进一步恶化。
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618164986)
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!