本篇要回答的问题:第一章"基础平台篇"到底搭起了一副怎样的信息世界骨架?为什么这门架构课如此强调"抽象能力"?输入/输出凭什么算"计算"?
本讲是第一章的收官回顾。它不引入新概念,而是把冯·诺依曼体系、编程语言、操作系统这条主线串成一副信息世界的骨架,并把全章反复强调的"抽象能力"提炼成方法论。核心立场:架构靠悟不靠记,用思考的方式去记忆。
抽象信息世界的骨架
核心目标不是取代各领域专业书,而是以架构为导向抽象出系统骨架,融会贯通拼出信息世界版图。抽象必然是有损的,难点在于忽略实现细节、把系统简洁呈现——这取决于理解程度和抽象能力。
关键洞见:抽象的层次取决于"你要描述什么"——描述系统本身可以详尽具体;但描述它与其他系统的关系时,就需要进一步简化。抽象有助于记忆,因为骨架需要逻辑自洽。
以冯·诺依曼体系为例,抽象为 “CPU + 存储 + 一系列输入输出设备”(图很笼统,连栈 stack 这种关键概念都没展开)——但正是这种笼统让人能宏观把握。
基础平台篇的内容回顾
| 主题 | 需求演进特征 | 要点 |
|---|---|---|
| 冯·诺依曼体系 | 极稳定,底层设计从未变 | 不能不佩服其远见 |
| 编程语言 | 语言多但范式演进不剧烈 | 过程式/函数式/面向对象囊括几乎所有;Go 独树一帜"面向连接" |
| 操作系统 | 需求演变非常剧烈 | UNIX→DOS→Win/Mac/Linux→iOS/Android |
关键判断:编程语言本身与业务架构关联不大,但语言长期沉淀的社区资源是架构设计的重要依赖,善用它能大幅降低研发成本。
传统操作系统的子系统:设备管理(存储/IO/网络)、进程管理、安全管理。其中 IO 主要和交互有关(留到"桌面软件开发"章详谈),服务端交互简单(命令行即可)。
操作系统的商业模式剧变——从苹果 iOS 起,无一例外新增三个模块:
| 模块 | 作用 |
|---|---|
| 账号 Account | 互联网账号,是支付与应用市场的基础 |
| 支付 Pay | —— |
| 应用市场 AppStore | 判断用户是否购买过软件 |
关键洞见:实现"账号-支付-应用市场"闭环,意味着操作系统商业模式从软件销售转向收税模式——所有现代操作系统凭借的都是巨大的流量红利。注意这里的账号是互联网账号(支付与商店的基础),不同于传统操作系统的本地账号(仅多用户权限隔离)。
参考资料与方法论
架构之美在于悟:信息世界是无中生有创造出来的,不需要记忆,而要找到创造背后的骨架和逻辑。架构即创造,靠悟不靠记。
如何构建需求的预判能力?
| 能力 | 要点 |
|---|---|
| 归纳总结 | 分析现象背后原因并推测未来;判断错了就复盘漏判了什么 |
| 批判精神 | 不是无中生有的批评,而是切实找到效率瓶颈与心智负担;读经典书要找出现状与历史背景的差异 |
附:输入/输出为何算"计算"?
有同学质疑:IO 明明是 IO 能力,怎么算"计算"?许式伟用**数的演化(自然数→整数→有理数→实数→复数)**类比"否定自己、不断延展抽象体系",给出广义"计算"视角:
| 设备 | 看作什么算子 | 说明 |
|---|---|---|
| 输入设备 | 模数转换算子 | 采集物理世界信息并数字化 |
| 输出设备 | 数模转换算子 | 把数字内容反作用于物理世界 |
| CPU 自身 | 数数转换 | 输入输出都是比特信息 |
关键判断:CPU 只做数数转换;结合 IO 提供的模数/数模"算子",连接了数字世界与物理世界的计算机,在数学上就完备了。
总结
第一章用抽象能力搭起信息世界骨架:冯·诺依曼体系极稳定、编程范式演进平缓、操作系统需求剧变且商业模式从卖软件转向收税。方法论上强调归纳与批判两大预判能力,并以广义"计算"统一了 IO 与计算。一句话立场:架构即创造,靠悟不靠记。
先把"是什么"回答清楚
| 概念 | 一句话说明 |
|---|---|
| 抽象 | 有损地忽略细节,把系统简洁呈现以助记忆 |
| 现代操作系统 | 含账号-支付-应用市场闭环、靠收税的操作系统 |
| 互联网账号 | 支付与应用商店的基础,区别于本地账号 |
| 广义计算 | 输入=模数算子、输出=数模算子、CPU=数数转换 |
| 批判精神 | 找出现状与经典书历史背景的差异 |
一句话速记
抽象搭骨架、悟而非记:冯·诺依曼稳如山、范式演进慢、操作系统剧变且转向收税;IO 是数模/模数算子,让计算机在数学上完备。
几条值得记住的判断
- 抽象层次取决于你要描述什么——描述关系时要比描述本身更简化。
- 现代操作系统靠收税而非卖软件,根基是账号带来的流量红利。
- 架构即创造,用思考的方式去记忆,而不是用记忆的方式去思考。
思考题
许式伟建议给自己布置一道作业:“谈谈 Go(或 Java)语言之美”——从语言设计中你感悟到了什么架构思维?换个角度回到你最熟的技术:如果要你只用一张图把它的骨架画给同事看,你会画哪几个框、省略掉哪些细节?这正是检验你抽象能力的试金石。




