📌 一句话总结

👉 你遵守约定,框架就替你干活;你越想自定义,框架越要你解释半天。


🧠 1. “约定大于配置”到底是啥?

1
2
3
4
5
【框架已准备好默认规则】

你只要按规则放文件 / 写类名 / 写注解

【自动生效 ✔】

反之:

1
2
3
4
5
【你想改规则】

你写更多配置

【复杂度 ↑ 出问题概率 ↑】

一句话:
框架给你铺好了高速公路,你别非要自己铲土再修一条小路。


🗂️ 2. 对比更直观:表格上墙!

项目 遵守约定(推荐) 破坏约定(你会哭)
代码量 ✨ 极少 🧱 一坨配置
开发速度 🚀 很快 🐢 像乌龟背锅跑
团队协作 🤝 无需沟通 😵 新人看了直接心梗
可维护性 💚 高 🔥 地狱模式
bug 概率 ⬇️ 低 ⬆️ 高

🧩 3. Spring Boot 经典示例

✔ 遵守约定(轻松)

1
2
@RestController
public class UserController {}

你写了 2 行,它帮你做 5 件事:

任务 是否自动完成?
扫描类
加载 Bean
注册 Controller
挂载路由
注入依赖

你像按了一个快捷键,框架帮你摆好所有桌子椅子。


❌ 破坏约定(自找罪受)

1
2
@Configuration
@ComponentScan(basePackages = "com.xxx.xxx.xxx.xxx")

效果如下:

1
你的自定义 → 框架懵逼 → 你继续写配置 → 你更懵逼

就像别人给你留了钥匙,你非要把窗户撬开进去。


🌟 4. 约定的三大好处

好处 说明
✂️ 更少代码 写得少=错得少,生活更甜。
🎯 结构统一 项目变得像酒店房间:一打开就知道东西在哪。
🌬 开发体验顺 不用写废话,不用读废话,不用猜框架想什么。

🔥 5. 不遵守约定会怎样?

  • 🧨 配置爆炸
  • 🐙 项目像章鱼一样乱甩触手
  • 😭 新人上来直接喊:“这是谁写的?!”
  • 🕯 你晚上查日志查到怀疑人生

一句话:
越自定义,越有风险;越偏离约定,越像野路子项目。


🛠 6. 什么时候可以稍微“不听话”?(但要有理由)

情况 可以破例吗?
默认行为无法覆盖业务 ✔ 必须
架构设计特殊要求 ✔ 可以
团队已统一共识 ✔ 允许
只是你“想试试别的写法” ❌ 别添乱

原则:
除非真的必要,否则不要动框架默认值。


🎬 最后的总结(短、稳、暖)

约定,是框架给你的温柔;
配置,是你付出的代价。
遵守约定,是效率、质量和团队协作的共同捷径。