《软件设计的哲学》中文翻译
在线阅读:http://gdut_yy.gitee.io/doc-aposd/
斯坦福教授、Tcl 语言发明者 John Ousterhout 的著作《A Philosophy of Software Design》,自出版以来,好评如潮。按照 IT 图书出版的惯例,如果冠名为“实践”,书中内容关注的是某项技术的细节和技巧;冠名为“艺术”,内容可能是记录一件优秀作品的设计过程和经验;而冠名为“哲学”,则是一些通用的原则和方法论,这些原则方法论串起来,能够形成一个体系。正如”知行合一”、“世界是由原子构成的”、“我思故我在”,这些耳熟能详的句子能够一定程度上代表背后的人物和**。用一句话概括《A Philosophy of Software Design》,软件设计的核心在于降低复杂性。
- 前言
- 第 1 章 介绍
- 第 2 章 复杂性的本质
- 第 3 章 工作代码是不够的
- 第 4 章 模块应该是深的
- 第 5 章 信息隐藏(和泄漏)
- 第 6 章 通用模块更深入
- 第 7 章 不同的层,不同的抽象
- 第 8 章 降低复杂性
- 第 9 章 在一起更好还是分开更好?
- 第 10 章 定义不存在的错误
- 第 11 章 设计它两次
- 第 12 章 为什么写评论呢?四个理由
- 第 13 章 注释应该描述代码中不明显的内容
- 第 14 章 选择的名字
- 第 15 章 先写评论
- 第 16 章 修改现有的代码
- 第 17 章 一致性
- 第 18 章 代码应该是显而易见的
- 第 19 章 软件发展趋势
- 第 20 章 设计性能
- 第 21 章 结论
- 总结
本项目基于 vuepress 进行开发,以提供比 github mardown 更佳的阅读体验
依赖于 node.js
、yarn
、vuepress
等环境
# vuepress
yarn global add vuepress
# 本地开发
git clone https://github.com/gdut-yy/A-Philosophy-of-Software-Design-zh.git
cd A-Philosophy-of-Software-Design-zh/
yarn docs:dev
gdut-yy |
inkydragon |
chenpy228 |
wuwenzhao |
BlackGlory |
xulongfei |
inkinworld |
wangzhongliang |
fanjiangqi |
AllenKaiChen |
liquid207 |