范式演进:从结构化编程到 Agent 时代
软件工程是一场跟复杂度的连续作战。这张时间线上的每一代范式, 都不是来取代上一代的——而是因为某种新型的不确定性变得无法忍受、 上一代的工具箱悄悄地不够用了。每一次转变都在前一次的基础上叠加。 Agent 时代继承了它下面的一切。
这一页跟 双轴框架 和 模式演进图 并列。三者用同一个问题问了三层—— 范式是最大的单位(工程师怎么看世界), 模式是中间的单位(某个范式内部被命名的解法), 双轴矩阵是某一个具体范式(也就是 Agent 时代)的结构解剖。
复杂度危机地图
在进入具体 Era 之前,先用一张压缩表看清主线: 每一代范式,都是为了消化当时最难忍受的那类复杂度。
| 时代 | 复杂度危机 | 新范式 |
|---|---|---|
| 1970s | 流程失控 | Structured Programming |
| 1980s | 状态失控 | OOP |
| 1990s | 对象协作失控 | GoF Patterns |
| 2000s | Web 系统失控 | MVC |
| 2010s | 分布式失控 | CAP / Saga |
| 2015+ | 组织扩展失控 | Microservices |
| 2017+ | 数据权衡失控 | Data-Intensive Thinking |
| 2020+ | AI 认知失控 | Agent Architecture |
一句话收口
每一代范式都吸收了一种新型不确定性,把它变得可控—— 从人能不能读懂代码, 到团队之间能不能各自交付而不互相卡住, 再到一个不可靠的模型能不能在一个可靠的系统里行动。 工程直觉是一样的。不可靠的那个节点,一层一层往上走。