每天一个计算机原则:专栏介绍

学一个框架,三年后它可能就过时了;懂一条原则,十年后它还在帮你做判断。

写代码写到一定年头,你会发现真正决定一个人水平的,不是背了多少 API,而是脑子里装了多少条原则——那些在无数系统里反复出现、反复被验证的规律。Redis 的缓存、CPU 的多级 Cache、MySQL 的索引,看似毫不相干,底下踩的是同一条"局部性原理";加线程不加性能、分布式怎么都绕不开取舍,背后是同一句"Amdahl 定律"。这个专栏要做的,就是每天一条,把计算机世界里这些"地基级"的原则一个个挖出来,讲清楚三件事:它从哪来、为什么需要它、它有什么用

一、这个专栏是什么

  • 是什么:每天一篇,讲解一个计算机领域反复出现的原则 / 定律 / 规律——从 Amdahl 定律、CAP 定理,到幂等性、背压、写前日志,再到 SOLID、KISS、最小权限。
  • 不是什么:不追框架、不贴 API 文档、不做工具教程。原则讲的是"为什么世界被设计成这个样子",而不是"这个按钮怎么点"。
  • 写给谁:写了两三年代码、开始对"系统为什么这么设计"好奇的人;以及想给自己的技术判断力补一块地基的人。

二、每篇固定三问(从哪里,为什么,有什么用)

每天一个计算机原则 · 固定三问结构 ① 它从哪来 起源 谁提出 · 哪一年 · 什么背景 ② 为什么需要它 动机 没有它会发生什么 ③ 本质一句话 一句话讲透 如"局部性 = 最近用过的还会再用" ④ 它有什么用 落地 Linux / Redis / MySQL / TCP 实例 ⑤ 反例与边界 什么时候不成立、什么时候被滥用 这是区分"懂"和"背"的地方 ⑥ 对比表 + 小结 🐾 结构化对比表格 + 条目小结收尾 每篇都留一张"带得走"的总结

每一篇都按这个骨架走:

  • ① 它从哪来:这条原则是谁提出的、哪一年、当时面对什么难题。原则不是天上掉下来的,背后几乎都有一段真实的历史(很多还带着一段踩坑故事)。
  • ② 为什么需要它:没有它会怎样——把痛点摆出来。理解了"没有它时的痛苦",才真正理解了它存在的理由。
  • ③ 本质一句话:把整篇压缩成一句话,方便你带走。比如局部性原理的本质就是"最近用过的,很快还会再用"。
  • ④ 它有什么用:落到真实系统——Linux 内核、Redis、MySQL、TCP、编译器里,它到底站在哪。尽量给代码、命令或可复现的细节,不空谈。
  • ⑤ 反例与边界:每一条原则都有适用范围。什么时候不成立、什么时候被过度使用,这是区分"真懂"和"背了个名词"的分水岭。
  • ⑥ 对比表 + 小结:用对比表格和条目收尾,一屏带走全部要点。

三、为什么值得每天读一条

  • 原则是半衰期最长的知识:框架平均两三年换一代,原则十年不过期。十年前成立的局部性原理、CAP 定理,今天依然是系统设计的第一性依据。
  • 原则能迁移:懂了 Amdahl 定律,你就看得懂为什么"加核不加性能"、为什么微服务拆分要算通信成本;懂了幂等性,你就理解为什么支付系统要设计重试、为什么接口要支持幂等键。一条原则,照亮一片具体技术。
  • 原则是判断力的来源:遇到新框架、新中间件,用原则去"验货"——它解决的是哪条老问题?它违背了哪条原则?这一问,很多营销话术就散了。

四、主题池长什么样

主题池按七个大类滚动取用,第一批已排到局部性原理、Amdahl 定律、二八定律、端到端原则、幂等性、空间换时间、CAP 定理、写前日志、康威定律、背压、最少惊讶、最小权限、快速失败、鲁棒性原则(Postel)……完整清单见版块规划(内容规划.md),共七大类 74 条:

  1. 定律与经验法则:Amdahl、Moore、二八定律、梅特卡夫、布鲁克斯、康威、帕金森、墨菲
  2. 算法与复杂度:大 O、摊还分析、空间换时间、分治、贪心、动态规划、鸽巢、哈希、一致性哈希、布隆过滤器
  3. 系统与存储:局部性、冯诺依曼、流水线、预取、缓存一致性、WAL、写时复制、崩溃一致性、ACID/BASE、虚拟内存、顺序读 vs 随机读、引用计数 vs GC
  4. 网络与分布式:端到端、Postel、幂等、背压、滑动窗口、拥塞控制、CAP、最终一致性、两阶段提交、Paxos/Raft、拜占庭将军、熔断降级限流
  5. 架构与设计:SOLID 五条、组合优于继承、信息隐藏、关注点分离、约定优于配置、单一事实源、最少惊讶、契约式设计
  6. 工程与容错:DRY、KISS/YAGNI、快速失败、失败安全、最小权限、纵深防御、12-Factor、可观测性、测试金字塔、语义化版本
  7. 语言与运行:图灵完备、停机问题、解释 vs 编译、JIT、纯函数、不可变、惰性求值、短路求值、逃逸分析、分代 GC

五、怎么读、怎么追

  • 节奏:每天一篇,日更连载;每篇配裸内联 SVG 图 + 对比表,十分钟内读完。
  • 顺序:没有强依赖,随手挑感兴趣的先读即可;但按日期顺序读,会隐约看到原则之间互相勾连(比如局部性引出缓存,缓存引出一致性,一致性引出 CAP)。
  • 点菜:主题池是开放的——如果你在工作中撞到某条"说不清但总觉得有道理"的规律,欢迎提出来,下一天就讲它。