作者:
[美] Brian W. Kernighan
/
Rob Pike
出版社: 机械工业出版社
原作名: The Practice of Programming
译者: 裘宗燕
出版年: 2000-8
页数: 221
定价: 20.00元
装帧: 平装
丛书: 计算机科学丛书
ISBN: 9787111075738
出版社: 机械工业出版社
原作名: The Practice of Programming
译者: 裘宗燕
出版年: 2000-8
页数: 221
定价: 20.00元
装帧: 平装
丛书: 计算机科学丛书
ISBN: 9787111075738
内容简介 · · · · · ·
这本书从排错、测试、性能、可移植性、设计、界面、风格和记法等方面,讨论了程序设计中实际的、又是非常深刻和具有广泛意义的思想、技术和方法。
程序设计实践的创作者
· · · · · ·
作者简介 · · · · · ·
Brian W.Kernighan和Rob Pike在朗讯科技贝尔实验室的计算机科学研究中心工作。Brian Kernighan是Addison-Wesley的“专业计算丛书”顾问编辑,也是《C程序设计语言》的合著者之一(与Dennis M.Ritchie合作)。Rob Pike是Plan 9和Inferno操作系统的主要结构设计与实现者,他的主要研究兴趣是如何帮助人们更容易地开发软件。
目录 · · · · · ·
译者序
前言
第1章 风格
1.1 名字
1.2 表达式和语句
1.3 一致性和习惯用法
1.4 函数宏
1.5 神秘的数
1.6 注释
1.7 为何对此费心
第2章 算法与数据结构
2.1 检索
2.2 排序
2.3 库
2.4 一个Java快速排序
2.5 大O记法
2.6 可增长数组
2.7 表
2.8 树
2.9 散列表
2.10 小结
第3章 设计与实现
3.1 马尔可夫链算法
3.2 数据结构的选择
3.3 在C中构造数据结构
3.4 生成输出
3.5 Java
3.6 C++
3.7 Awk和Perl
3.8 性能
3.9 经验教训
第4章 界面
4.1 逗号分隔的值
4.2 一个原型库
4.3 为别人用的库
4.4 C++实现
4.5 界面原则
4.6 资源管理
4.7 终止、重试或失败
4.8 用户界面
第5章 排错
5.1 排错系统
5.2 好线索,简单错误
5.3 无线索,难办的错误
5.4 最后的手段
5.5 不可重现的错误
5.6 排错工具
5.7 其他人的程序错误
5.8 小结
第6章 测试
6.1 在编码过程中测试
6.2 系统化测试
6.3 测试自动化
6.4 测试台
6.5 应力测试
6.6 测试秘诀
6.7 谁来测试
6.8 测试马尔可夫程序
6.9 小结
第7章 性能
7.1 瓶颈
7.2 计时和轮廓
7.3 加速策略
7.4 代码调整
7.5 空间效率
7.6 估计
7.7 小结
第8章 可移植性
8.1 语言
8.2 头文件和库
8.3 程序组织
8.4 隔离
8.5 数据交换
8.6 字节序
8.7 可移植性和升级
8.8 国际化
8.9 小结
第9章 记法
9.1 数据格式
9.2 正则表达式
9.3 可编程工具
9.4 解释器、编译器和虚拟机
9.5 写程序的程序
9.6 用宏生成代码
9.7 运行中编译
后记
附录:规则汇编
索引
· · · · · · (收起)
前言
第1章 风格
1.1 名字
1.2 表达式和语句
1.3 一致性和习惯用法
1.4 函数宏
1.5 神秘的数
1.6 注释
1.7 为何对此费心
第2章 算法与数据结构
2.1 检索
2.2 排序
2.3 库
2.4 一个Java快速排序
2.5 大O记法
2.6 可增长数组
2.7 表
2.8 树
2.9 散列表
2.10 小结
第3章 设计与实现
3.1 马尔可夫链算法
3.2 数据结构的选择
3.3 在C中构造数据结构
3.4 生成输出
3.5 Java
3.6 C++
3.7 Awk和Perl
3.8 性能
3.9 经验教训
第4章 界面
4.1 逗号分隔的值
4.2 一个原型库
4.3 为别人用的库
4.4 C++实现
4.5 界面原则
4.6 资源管理
4.7 终止、重试或失败
4.8 用户界面
第5章 排错
5.1 排错系统
5.2 好线索,简单错误
5.3 无线索,难办的错误
5.4 最后的手段
5.5 不可重现的错误
5.6 排错工具
5.7 其他人的程序错误
5.8 小结
第6章 测试
6.1 在编码过程中测试
6.2 系统化测试
6.3 测试自动化
6.4 测试台
6.5 应力测试
6.6 测试秘诀
6.7 谁来测试
6.8 测试马尔可夫程序
6.9 小结
第7章 性能
7.1 瓶颈
7.2 计时和轮廓
7.3 加速策略
7.4 代码调整
7.5 空间效率
7.6 估计
7.7 小结
第8章 可移植性
8.1 语言
8.2 头文件和库
8.3 程序组织
8.4 隔离
8.5 数据交换
8.6 字节序
8.7 可移植性和升级
8.8 国际化
8.9 小结
第9章 记法
9.1 数据格式
9.2 正则表达式
9.3 可编程工具
9.4 解释器、编译器和虚拟机
9.5 写程序的程序
9.6 用宏生成代码
9.7 运行中编译
后记
附录:规则汇编
索引
· · · · · · (收起)
原文摘录 · · · · · · ( 全部 )
-
全局变量、全局函数、类和结构体都应该有说明性的名字,以表明它们在程序里扮演的角色。 相反,对局部变量使用短名字就够了。按常规方式使用的局部联邦可以采用极短的名字,比如i、j作为循环变量;p、q作为指针;s、t表示指针等。 函数应该采用动作性的名字。函数名应当用动作性的动词,后面可以跟着名词: now = date.getTime(); putchar('\n'); (查看原文) —— 引自第2页 -
对返回布尔类型值(或真/假)的函数命名时,应该清楚地反映其返回值情况。比如下面的命名就不是很好了: if (checkoctal(c)) ... 因为这里函数名字就没有指明什么时候返回真,什么时候返回假。而下面这种写法就挺好: if (isoctal(c)) ... 这样就把返回真假的情况指明了。 (查看原文) —— 引自第2页
> 全部原文摘录
丛书信息
· · · · · ·
计算机科学丛书(共650册),
这套丛书还有
《Java语言导学(原书第6版)》《逻辑与计算机设计基础(原书第5版)》《计算机文化》《计算机程序的构造和解释(JavaScript版)》《数据库系统(设计实现与管理进阶篇原书第6版)/计算机科学丛书》
等
。
喜欢读"程序设计实践"的人也喜欢的电子书 · · · · · ·
支持 Web、iPhone、iPad、Android 阅读器
喜欢读"程序设计实践"的人也喜欢 · · · · · ·
-
- 编程精粹 9.0
-
- C++程序设计语言(特别版) 8.9
-
- C专家编程 9.1
-
- C程序设计语言 9.4
-
- UNIX编程环境 8.7
-
- C++沉思录 8.3
-
- STL源码剖析 8.7
-
- Effective STL中文版 8.9
-
- Windows 程序设计:第5版 8.8
程序设计实践的书评 · · · · · · ( 全部 22 条 )
发现上当了,不如买英文原版的
英语不好,第一次买英文书,没信心,正好发现这个评注版,欣然买之。然后发现所谓的评注不是针对难点的解释,大都是没用的,该解释的作者都已解释清楚了,而这本书又是写思想的不是技术,没有什么难点,评注看的反而碍眼,影响书原汁原味的感觉,这本书40多块329页,而原版的才...
(展开)
> 更多书评 22篇
论坛 · · · · · ·
| 谁有这本书?? | 来自恢恢乎游刃有余 | 2011-07-13 10:42:45 | |
| 请问这本书java程序员看了有没有用? | 来自晴耕雨读 | 3 回应 | 2009-08-27 09:05:19 |
这本书的其他版本 · · · · · · ( 全部7 )
-
Addison-Wesley (1999)9.3分 180人读过
-
机械工业出版社 (2005)9.2分 137人读过
-
机械工业出版社 (2007)9.0分 99人读过
-
电子工业出版社 (2011)8.3分 59人读过
在哪儿借这本书 · · · · · ·
以下书单推荐 · · · · · · ( 全部 )
- 各学科领域入门书籍 (征羽)
- 我的编程之路 (Yun)
- C++书单(转载) (海若)
- 豆瓣评分>9的计算机图书 (whg)
- 【书单】各学科领域入门书籍推荐(2012续) 转自 果壳网 (?)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
- 在豆瓣转让 有3593人想读,手里有一本闲着?
订阅关于程序设计实践的评论:
feed: rss 2.0

1 有用 巫山霏云 2011-01-11 23:45:37
翻译的人感觉很熟,但是翻译的质量相当的挫,不过书的内容那是非常的好,很值得一读
0 有用 空气 2008-06-03 22:30:44
书很好,但翻译很外行,很多专有名词非常别扭,或许当年就流行这么翻译?
0 有用 之江 2009-11-17 20:05:43
非常平淡
0 有用 zchenah 2009-09-13 22:05:53
语言简洁,举例详尽。有助于从学生到程序员的转变
0 有用 uncutstone 2006-07-04 20:42:21
非常好