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