内容简介:
《简约之美:软件设计之道》将软件设计作为一门严谨的科学,阐述了开发出优雅简洁的代码所应该遵循的基本原则。作者从为什么以前软件设计没有像数学等学科一样成为一门科学开始入手,道出了软件以及优秀的软件设计的终极目标,并给出了具体的指导规则。
作者简介:
Max Kanat-Alexander:开源项目Bugzilla总架构师,Google软件工程师,作家,8岁开始修电脑,14岁开始编程。codesimplicity.com和fedorafaq.org网站维护者,现居北加州。
目录:
目录
第1 章 引言1
1.1 计算机出了什么问题?3
1.2 程序究竟是什么?5
第2 章 缺失的科学9
2.1 程序员也是设计师12
2.2 软件设计的科学13
2.3 为什么不存在软件设计科学15
第3 章 软件设计的推动力19
第4 章 未来27
4.1 软件设计的方程式29
4.1.1 价值30
4.1.2 成本31
4.1.3 维护32
4.1.4 完整的方程式33
4.1.5 化简方程式33
4.1.6 你需要什么,不需要什么34
4.2 设计的质量36
4.3 不可预测的结果37
第5 章 变化41
5.1 真实世界中程序的变化43
5.2 软件设计的三大误区46
5.2.1 编写不必要的代码46
5.2.2 代码难以修改48
5.2.3 过分追求通用51
5.3 渐进式开发及设计53
第6 章 缺陷与设计55
6.1 如果这不是问题……57
6.2 避免重复59
第7 章 简洁61
7.1 简洁与软件设计方程式65
7.2 简洁是相对的65
7.3 简洁到什么程度?67
7.4 保持一致69
7.5 可读性71
7.5.1 命名72
7.5.2 注释73
7.6 简洁离不开设计74
第8 章 复杂性77
8.1 复杂性与软件的用途81
8.2 糟糕的技术83
8.2.1 生存潜力83
8.2.2 互通性84
8.2.3 对品质的重视84
8.2.4 其他原因85
8.3 复杂性及错误的解决方案85
8.4 复杂问题86
8.5 应对复杂性87
8.5.1 把某个部分变简单89
8.5.2 不可解决的复杂性90
8.6 推倒重来90
第9 章 测试93
附录A 软件设计的规则97
附录B 事实、规则、条例、定义101
文章试读:Max Kanant-Alexander 开源项目 Bugzilla总架构师, Google软件工程师,作家, 8岁开始修电脑, 14岁开始编程。 Wdesimphicity.com和 fedorafaq.com网站维护者,目前居住在北加州。 余晟 毕业于东北师范大学计算机系,副修中文,非正统型技术爱好者。曾任抓虾网、银杏泰克主力程序员,盛大创新院高级研究员,现任华南某电商公司技术总监。坚信计算...
(查看全部试读)