# 📚 教程:像架构师一样思考 > 这套教程不教你任何一门语言、任何一个框架。 > 它教你一种**可迁移、不会过时**的能力:在写代码之前,先把系统想清楚。 --- ## 这套教程想解决什么问题 很多人写了很多年代码,依然画不出自己系统的架构图,也说不清「为什么用这个而不是那个」。原因是:**学校和教程几乎都在教「实现」,很少有人系统地教「判断」。** - 实现能力回答的是:*这个功能怎么写出来?* - 架构判断回答的是:*这个系统应该长什么样?哪里会出问题?我在拿什么换什么?* 这套教程,专门补「判断」这一课。 --- ## 学习路径 教程分六段,**建议按顺序读**,但每一章也能独立看。 ### 第一段:建立思维(01–03)—— 换一个看系统的视角 | 章节 | 一句话 | |---|---| | [01 · 为什么先有架构思维](01-为什么先有架构思维.md) | 在 AI 写代码的时代,判断力比实现力更稀缺。 | | [02 · 架构师的思考框架](02-架构师的思考框架.md) | 任何系统都能用「需求→约束→质量属性→取舍」拆开。 | | [03 · 读懂与画好架构图](03-读懂与画好架构图.md) | 用 C4 模型,把脑子里的系统画成别人看得懂的图。 | ### 第二段:掌握工具箱(04–06)—— 架构师手里到底有哪些牌 | 章节 | 一句话 | |---|---| | [04 · 十大核心架构模式](04-十大核心架构模式.md) | 分层、微服务、事件驱动、CQRS… 每个模式都是对某个问题的回答。 | | [05 · 数据与状态](05-数据与状态.md) | 系统真正难的不是逻辑,是数据放哪、怎么一致、怎么扩。 | | [06 · 质量属性与取舍](06-质量属性与取舍.md) | 性能、可用性、一致性、成本——你不可能全都要。 | ### 第三段:实战与演进(07–08)—— 把判断力用起来 | 章节 | 一句话 | |---|---| | [07 · 从 0 到 1 设计一个系统](07-从0到1设计一个系统.md) | 给你一套照着做就能产出架构方案的方法论。 | | [08 · 架构决策记录与演进](08-架构决策记录与演进.md) | 用 ADR 把「为什么这么决定」记下来,让架构随业务长大。 | ### 第四段:超越框架(09)—— 把判断力升华为品味 | 章节 | 一句话 | |---|---| | [09 · 架构品味](09-架构品味.md) | 框架之外,真正拉开差距的是品味;用真实项目对比(微服务回单体、各大公司审美…)把它养出来。 | --- ## 🚀 进阶篇(10–17)—— 驾驭做大做关键后才咬人的硬骨头 入门篇带你从 0 设计一个中小系统;**进阶篇处理的是另一类问题:当系统做大、做关键,真正的硬骨头才会露出来**——分布式、失败、规模、演进、组织、安全,并以「大模型时代的架构判断」收尾,贯穿当下 vibe coding 的主线。 | 章节 | 一句话 | |---|---| | [10 · 分布式系统的硬道理](10-分布式系统的硬道理.md) | 部分失败、没有全局时钟、共识很贵——分布式到底难在哪。 | | [11 · 数据一致性工程](11-数据一致性工程.md) | 没有跨服务事务的世界,用 Saga / Outbox / 幂等 / 事件溯源把数据弄对。 | | [12 · 为失败而设计:韧性工程](12-为失败而设计.md) | 预设一定会出事:熔断、隔离、降级、重试、SLO、混沌工程。 | | [13 · 规模化的力学](13-规模化的力学.md) | 分片、一致性哈希、热点、多活、尾延迟——规模会在哪先裂开。 | | [14 · 演进与拆分大型系统](14-演进与拆分大型系统.md) | 给飞行中的飞机换引擎:绞杀者、并行运行、零停机迁移、拆单体。 | | [15 · 组织即架构](15-组织即架构.md) | 康威定律:系统会长得像你的组织;团队拓扑与平台工程。 | | [16 · 安全与多租户架构](16-安全与多租户架构.md) | 把安全当结构:威胁建模、零信任、爆炸半径、租户隔离。 | | [17 · 大模型时代的架构判断](17-大模型时代的架构判断.md) | vibe coding 时代,靠判断力不可替代;把理论收束到当下。 | --- ## 🎯 实战篇(18–22)—— 把方法落到真实案例 入门 + 进阶教了「怎么判断」;**实战篇补的是「怎么练」**——用真实案例把 [07](07-从0到1设计一个系统.md) 的方法、[08](08-架构决策记录与演进.md) 的演进、[10–16](10-分布式系统的硬道理.md) 的硬骨头,和 `templates/` 里的架构地图串成一条完整故事线。**建议先读这一篇,再读 AI 协同设计篇。** | 章节 | 一句话 | |---|---| | [18 · 读地图:用框架拆解陌生系统](18-读地图用框架拆解陌生系统.md) | 用四步法逆向读懂陌生系统;以 RAG / AI 对话产品练眼。 | | [19 · 完整设计演练:中等复杂度系统](19-完整设计演练中等复杂度系统.md) | 07 八步第二次完整走法——从 0 设计「能查单、能退款」的 AI 智能客服。 | | [20 · 演进剧本:MVP 到规模化](20-演进剧本MVP到规模化.md) | 延续 19 章同一个 AI 客服:看量化信号、写 ADR、决定何时升级。 | | [21 · 拆分与迁移实战](21-拆分与迁移实战.md) | 14 章落地:绞杀者、抽象分支、影子流量、零停机换向量库。 | | [22 · AI 原生系统设计](22-AI原生系统设计.md) | 把 19 章客服升级为自主 Agent,落地 17 章三个新约束,引向下一篇。 | --- ## 🤝 AI 协同设计篇(23–26)—— 与 AI 协作,而不失控 **前置:实战篇。** 这一篇不讲 vibe coding 工具技巧,而讲** workflow 与审查**——规格怎么写给 AI、产出默认缺什么、eval 怎么当门禁、何时 vibe 何时 spec-first。与 [architecture-copilot](https://github.com/study8677/architecture-copilot) skill 同一产品线。 | 章节 | 一句话 | |---|---| | [23 · 规格即架构:约束怎么写给 AI](23-规格即架构约束怎么写给AI.md) | 把 ADR 和质量目标写成 AI 能持续遵守的护栏。 | | [24 · 审查清单:AI 产出默认缺什么](24-审查清单AI产出默认缺什么.md) | 11/12/16 的生产级 review checklist,判断 AI 方案扛不扛得住。 | | [25 · 评测驱动:把「够好」写进架构](25-评测驱动把够好写进架构.md) | 非确定性系统的 eval 门禁,防止换模型/改提示后悄悄退化。 | | [26 · 协作决策树:何时 vibe、何时 spec-first](26-协作决策树何时vibe何时spec-first.md) | 原型尽情 vibe、生产用判断收口的总 workflow。 | --- ## 读完这套教程,你应该能做到 - [ ] 拿到一个模糊需求,能问出对的问题,把它拆成明确的约束和质量目标。 - [ ] 听到「我们要做个 X」,脑子里能立刻浮现出几种候选架构,并说出各自的取舍。 - [ ] 能在白板/文档上画出清晰的架构图,让产品、后端、前端都看得懂。 - [ ] 看到一个陌生系统(比如本仓库 `templates/` 里的任何一个),能快速读懂它「为什么这么设计」。 - [ ] 做架构决策时,不再凭感觉或跟风,而是基于约束和取舍,并把理由写下来。 - [ ] *(实战篇)* 对着陌生系统或模板,能完整走一遍「读懂 → 设计 → 演进 → 迁移」。 - [ ] *(AI 协同篇)* 能把架构约束写给 AI、审查其产出,并在原型与生产之间选对协作方式。 --- ## 配合 `templates/` 一起学 教程是「方法」,模板是「案例」。最好的学法是**边学边对照**: > 读完 [02 思考框架](02-架构师的思考框架.md),就去看 [AI 对话产品模板](../templates/ai-chat-product/README.md), > 看它的「核心需求与约束」是不是正好对应你刚学的那套拆解方法。 每个模板都按同一套结构写(见 [templates/README.md](../templates/README.md)),所以你越读越快——因为你已经知道该去哪里找「关键决策」和「常见误区」了。 --- ## 一个提醒 > 架构没有标准答案,只有在特定约束下「更合理」的答案。 > 这套教程给你的不是结论,是**提问的能力**。 > 当你开始对每一个技术选择都自然地问出「为什么是它?代价是什么?」——你就已经在用架构师的方式思考了。