Untacit.

交互式课程

为什么要学系统设计

六大盲点与正确学习方法

9 个章节预计 30 分钟
01 / 09

System Design 是什么?

你可能在面试题或架构图里见过 System Design,但它比这些更早开始:它藏在我们每天都在使用的简单体验背后。

System Design 不是一组需要背下来的标准答案,而是一种从真实需求推理到可落地系统的思考方式。

你今天发过消息吗?

每天发消息看起来再简单不过,背后却藏着一整套系统问题。点击卡片看看:

System Design 是什么?

刚刚这些问题——消息存在哪里、怎么同步、怎么保证顺序、一百个人同时在线怎么办——其实都属于同一件事:

System Design 是定义各个软件组件如何组合起来满足一组需求的过程。它连接抽象的业务目标和具体的技术实现:需要对 、数据流、可扩展性、容错,以及成本、速度和复杂度之间的取舍作出选择。

那 System Design 本质上在做什么?一句话:

面对一个模糊的需求,逐步把它变成一个清晰、可落地的系统。

用户说:“我要发消息。”这是一个要解决的需求,但它还是模糊的。System Design 要回答的是:

  • 系统应该长什么样?
  • 有哪些组件?
  • 它们怎么协作?
  • 未来怎么扩展?
  • 出现故障怎么办?

当这些问题都被回答清楚时,一个模糊的需求就变成了一个可以落地的系统。这个完整的思考过程,就是 System Design。

如果把定义里的 software 拿掉,它就不只是在讲软件实现,而是在讲不同组件如何组合起来解决复杂问题。一个 AI Workflow、一次功能开发、一个 bug 修复,哪怕做一张 PPT,都可以用组件协作的思维来考虑。

所以即使现在只是做一个只有自己使用的 side project,也需要做 System Design 的判断:选什么组件、用什么架构、怎么发布、数据存在哪里、出错了怎么处理?这些都是 System Design。

多数人其实已经在做其中一部分判断。关键在于:这些判断是清醒、有意识地作出的,还是凭感觉和惯性作出的?这个差别,正是许多好意最终仍会落入常见盲点的根源。

02 / 09

为什么学习 System Design?

很多人在 System Design 上做得不够好,不是因为不努力,而是因为下面三个基础没有被真正意识到。东西也许能很快做出来,但方向会跑偏、结构会变得脆弱,别人也难以理解和协作。

每次做产品判断、设计功能或讨论方案时,你其实已经在使用其中一部分知识。课程要做的是把这些隐性知识显性化;暂时不了解的部分,也都是可以习得的技能。

这三个基础在实践中会展开成六个常见盲点。接下来的六节课会逐一把它们讲清楚,并给出更有意识的工作方式。

03 / 09

盲点 1:没想清楚用户是谁就开始做了

很多团队拿到需求就开始写代码,却没有搞清楚真正的用户是谁、他们的痛点是什么。

案例:AI 客服机器人

团队花了三个月做了一个智能问答机器人。上线后发现,用户需要的其实是一个结构化的填表工具,而不是一个自由对话的机器人。

为什么会发生?

在 AI 时代,有了 和 Cursor 这样的工具,写代码变得前所未有的容易。但这反而让 更加重要。

(执行成本)下降时,(决策成本)的重要性反而上升了:

  • 过去:实现本身成本高,团队的大量时间花在“能不能做出来”
  • 现在:AI 压缩了部分实现成本,选择方向、验证结果和承担错误决策的风险更加突出

问题已经从“没有方案可选”变成了“方案太多”。AI 可以在很短时间内给出十种看起来都合理的设计,但它无法替你判断哪一种真正符合用户、约束和后果。选项越多,判断反而越重要。

过去,Execution 能力决定能不能做(会不会写代码、能不能实现功能)。现在(AI 时代),Decision 能力决定能不能做(做什么、为什么做、怎么取舍)。

AI 能写代码、文档和自动化,并不意味着严谨性消失了;它只是前移到了更上游:把问题定义清楚、把判断做清楚、把结果验证清楚。执行成本越低,这种清晰判断就越有价值。

小测验

04 / 09
05 / 09
06 / 09
07 / 09
08 / 09
09 / 09