CS Foundations
8/17/26About 4 min
CS Foundations
这一部分回答的是“软件为什么能这样运行,以及为什么要这样设计”。内容从单机资源管理与网络通信出发,逐步上升到代码结构、服务边界和分布式系统 tradeoff。
Computer Science Knowledge System
Understand the runtime, then design the system.
操作系统解释进程、内存、文件与 I/O;网络解释服务如何通信; OOD 和设计模式处理代码级结构;系统设计把这些约束组合成可扩展、可恢复的服务。
Operating SystemsComputer NetworksOODDesign PatternsDistributed Systems
From Runtime to Architecture
01Runtime
进程、线程、调度、虚拟内存、文件系统和 I/O 决定单机行为。
02Network
TCP、HTTP、DNS、RPC 与代理决定跨机器通信的语义和成本。
03Software Design
对象、接口、模式和模块边界控制变化如何在代码中传播。
04System Design
容量、存储、一致性、可用性与安全共同决定系统架构。
Knowledge Map
Runtime
Operating Systems
进程、内存、文件、设备、I/O、缓存与内核边界。
CommunicationComputer Networks
从 IP、TCP 和 QUIC 到 HTTP、RPC、DNS、WebSocket 与 CDN。
Object scaleObject-Oriented Design
从需求澄清到核心对象、用例、类图、接口和正确性验证。
Change managementDesign Patterns
识别变化点与稳定点,用创建、结构和行为模式表达协作关系。
Service scaleSystem Design
需求、容量、API、数据、服务、扩展、可用性和演进路线。
Distributed scaleDistributed Systems
复制、一致性、事务、故障与网络分区下的系统取舍。
Choose a Learning Path
A System-Design Answer Should Connect
| 维度 | 必须回答的问题 |
|---|---|
| Requirements | 核心场景、范围、SLO 和不做什么是什么? |
| Capacity | QPS、数据量、读写比、带宽和增长预期是什么? |
| Interface | API、事件和服务边界如何表达业务语义? |
| Data | 数据模型、索引、分区、缓存与一致性如何选择? |
| Reliability | 故障如何检测、隔离、恢复和降级? |
| Evolution | 方案如何从 working solution 演进,而不是一次性过度设计? |
How the Sections Connect
Algorithms explain the local computation inside each component →AI systems add model serving, evaluation, data, and agent execution constraints →Engineering notes cover concrete languages, databases, middleware, and operations →
Maintenance Principle
- 目录页负责建立地图、阅读顺序和跨章节连接。
- 专题页负责完整解释一个问题,优先加入例子、约束和 tradeoff。
- 案例页负责把基础知识串成具体方案,不重复堆砌定义。
- 同一主题从不同角度出现时,使用交叉链接说明关系,而不是复制相同内容。
