开篇词
1.
开篇词:怎样成长为优秀的软件架构师?
基础平台篇
2.
架构设计的宏观视角
3.
大厦基石:无生有,有生万物
4.
汇编:编程语言的诞生
5.
编程语言的进化
6.
思考题解读:如何实现可自我迭代的计算机?
7.
操作系统进场
8.
软件运行机制及内存管理
9.
操作系统内核与编程接口
10.
外存管理与文件系统
11.
输入和输出设备:交互的演进
12.
多任务:进程、线程与协程
13.
进程内协同:同步、互斥与通讯
14.
进程间的同步互斥、资源共享与通讯
15.
IP 网络:连接世界的桥梁
16.
可编程的互联网世界
17.
安全管理:数字世界的守护
18.
架构:需求分析 (上)
19.
架构:需求分析 (下)实战案例
20.
基础平台篇:回顾与总结
桌面开发篇
21.
桌面开发的宏观视角
22.
图形界面程序的框架
23.
桌面程序的架构建议
24.
Web开发:浏览器、小程序与PWA
25.
跨平台与 Web 开发的建议
26.
桌面开发的未来
27.
实战(一):怎么设计一个“画图”程序?
28.
实战(二):怎么设计一个“画图”程序?
29.
实战(三):怎么设计一个“画图”程序?
30.
实战(四):怎么设计一个“画图”程序?
31.
实战(五):怎么设计一个“画图”程序?
32.
辅助界面元素的架构设计
33.
架构:系统的概要设计
34.
桌面开发篇:回顾与总结
服务端开发篇
35.
服务端开发的宏观视角
36.
流量调度与负载均衡
37.
业务状态与存储中间件
38.
键值存储与数据库
39.
文件系统与对象存储
40.
存储与缓存
41.
服务端的业务架构建议
42.
实战(一):“画图”程序后端实战
43.
实战(二):“画图”程序后端实战
44.
实战(三):“画图”程序后端实战
45.
实战(四):“画图”程序后端实战
46.
架构:怎么做详细设计?
47.
服务端开发篇:回顾与总结
48.
加餐 如何做HTTP服务的测试?
服务治理篇
49.
服务治理的宏观视角
50.
事务与工程:什么是工程师思维?
51.
发布、升级与版本管理
52.
日志、监控与报警
53.
加餐:怎么保障发布的效率与质量?
54.
故障域与故障预案
55.
故障排查与根因分析
56.
过载保护与容量规划
57.
业务的可支持性与持续运营
58.
云计算、容器革命与服务端的未来
59.
服务治理篇:回顾与总结
架构思维篇
60.
心性:架构师的修炼之道
61.
如何判断架构设计的优劣?
62.
少谈点框架,多谈点业务
63.
架构分解:边界,不断重新审视边界
64.
加餐:实战:“画图程序” 的整体架构
65.
全局性功能的架构设计
66.
重新认识开闭原则 (OCP)
67.
接口设计的准则
68.
不断完善的架构范式
69.
架构范式:文本处理
70.
架构老化与重构
71.
架构思维篇:回顾与总结
软件工程篇
72.
软件工程的宏观视角
73.
团队的共识管理
74.
怎么写设计文档?
75.
如何阅读别人的代码?
76.
发布单元与版本管理
77.
软件质量管理:单元测试、持续构建与发布
78.
开源、云服务与外包管理
79.
软件版本迭代的规划
80.
软件工程的未来
81.
软件工程篇:回顾与总结
结束语
82.
结束语:放下技术人的身段,用极限思维提升架构能力
延展阅读
83.
热点观察:我看Facebook发币(上):区块链、比特币与Libra币
84.
热点观察:我看Facebook发币(下):深入浅出理解 Libra 币
85.
用户故事:站在更高的视角看架构
86.
答疑解惑:想当架构师,我需要成为“全才”吗?
87.
课外阅读:从《孙子兵法》看底层的自然法则
Light
Rust
Coal
Navy
Ayu
许式伟的架构课
加餐:怎么保障发布的效率与质量?