datasheet
超过460,000+ 应用技术资源下载
pdf

C语言接口与实现:创建可重用软件的技术.pdf

  • 1星
  • 日期: 2013-06-20
  • 大小: 1.97MB
  • 所需积分:1分
  • 下载次数:7
  • favicon收藏
  • rep举报
  • 分享
  • free评论
标签: C语言接口软件模块技术接口设计

《C语言接口与实现:创建可重用软件的技术》,原名《C Interfaces and Implementations:Techniques for Creating Reusable Software》,作者:【美】David R.Hanson,翻译:傅蓉 周鹏 张昆琪 权威,出版社:机械工业出版社,ISBN:7111130057,PDF 格式,大小 10MB。

内容简介:

本书概念清晰、内容新颖、实例详尽,是一本有关设计、实现和有效使用c语言库函数,掌握创建可重用c语言软件模块技术的参考指南。本书倡导基于接口的c语言设计理念及其实现技术,深入详细地描述了24个c语言接口及其实现。

   本书通过叙述如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api,本书是一本针对 c语言程序员的不可多得的好书,也是值得所有希望掌握可重用软件模块技术的读者阅读的参考书籍。

   关于如何设计、实现和有效使用库函数的指南少之又少(如果说还有的话)。这本力作填补了这 个空白。它可以作为下一代软件的工具书.所有的c语言程序员都应该阅读。

   ——w.richard stevens

   “我向每位专业c语言程序员推荐这本书。c语言程序员们忽视书中所描述的各种技术已经太长时 间了。”

   ——norman ramsey,贝尔实验室研究员 每一位程序员和软件项目经理必须掌握创建可重用软件模块的技术:可重用软件模块是 构建大规模、可靠应用的基石。与当前某些面向对象语言不同,c语言为创建可重用应用程 序接口(application programming interface,api)提供的语言和功能支持非常少。尽管大多 数c语言程序员在自己所编写的每一个应用程序中都使用api和实现api的库.但只有相当少 的程序员可以创建和发布新的、可广泛使用的api。本书阐述了如何用一种与语言无关的方 法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api。 书中提供大量实例具体说明这种方法。作者详细描述了24个接口和它们的实现细节,有助于 读者对这种设计方法的透彻理解。

本书具有如下特色:

简洁明了的接口描述。为对接口设计感兴趣的程序员提供了一个参考手册

每一章接口的代码实现分析将帮助读者修改、扩充一个接口,或者设计相关接口

深入探讨了“算法工程”:阐述如何将数据结构以及相关算法打包到可重用模块中

24个api和8个实例程序的源代码都经过测试检查,每个程序都是按照”literate程序”的形 式构成。为源代码提供了全面完整的解释

提供了非常少见的有关c语言编程技巧的文档记录

可以方便地在http://www.cs.princeton.edu/software/cii/访问本书的所有源码

目录:

出版者的话

专家指导委员会

译者序

前言

第1章 简介 1

1.1 literate程序 2

1.2 编程风格 6

1.3 效率 7

参考书目浅析 9

练习 9

第2章 接口与实现 11

2.1 接口 11

2.2 实现 13

2.3 抽象数据类型 15

2.4 客户调用程序的责任 17

2.5 效率 21

参考书目浅析 21

练习 22

第3章 原子 25

3.1 接口 25

.3.2 实现 26

参考书目浅析 31

练习 31

第4章 异常与断言 33

4.1 接口 34

4.2 实现 38

4.3 断言 43

参考书目浅析 46

练习 46

第5章 内存管理 49

5.1 接口 50

5.2 产品级实现 53

5.3 校验实现 55

参考书目浅析 62

练习 62

第6章 进一步内存管理 65

6.1 接口 65

6.2 实现 67

参考书目浅析 72

练习 73

第7章 链表 75

7.1 接口 75

7.2 实现 78

参考书目浅析 83

练习 83

第8章 表格 85

8.1 接口 85

8.2 例子:单词频率 87

8.3 实现 92

参考书目浅析 98

练习 98

第9章 集合 101

9.1 接口 101

9.2 实例:交叉引用列表 103

9.3 实现 109

9.3.1 成员操作 110

9.3.2 集合操作 113

参考书目浅析 116

练习 116

第10章 动态数组 119

10.1 接口 119

10.2 实现 122

参考书目浅析 124

练习 125

第11章 序列 127

11.1 接口 127

11.2 实现 128

参考书目浅析 133

练习 133

第12章 环 135

12.1 接口 135

12.2 实现 137

参考书目浅析 144

练习 144

第13章 位向量 147

13.1 接口 147

13.2 实现 149

13.2.1 成员操作 150

13.2.2 比较 154

13.2.3 集合操作 155

参考书目浅析 157

练习 157

第14章 格式化 159

14.1 接口 159

14.1.1 格式化函数 160

14.1.2 转换函数 162

14.2 实现 165

14.2.1 格式化函数 165

14.2.2 转换函数 171

参考书目浅析 175

练习 176

第15章 低级字符串 177

15.1 接口 178

15.2 例子:打印标识符 183

15.3 实现 183

15.3.1 字符串操作 185

15.3.2 分析字符串 189

15.3.3 转换函数 193

参考书目浅析 193

练习 194

第16章 高级字符串 197

16.1 接口 197

16.2 实现 202

16.2.1 字符串操作 205

16.2.2 内存管理 208

16.2.3 分析字符串 210

16.2.4 转换函数 214

参考书目浅析 214

练习 215

第17章 扩展精度算法 217

17.1 接口 217

17.2 实现 221

17.2.1 加法和减法 222

17.2.2 乘法 224

17.2.3 除法和比较 225

17.2.4 移位 230

17.2.5 字符串转换 232

参考书目浅析 234

练习 234

第18章 任意精度算法 237

18.1 接口 237

18.2 示例:一个计算器 240

18.3 实现 245

18.3.1 取反和乘法 247

18.3.2 加法和减法 248

18.3.3 除法 250

18.3.4 求幂 252

18.3.5 比较 253

18.3.6 简易函数 254

18.3.7 移位 255

18.3.8 字符串和整数转换 256

参考书目浅析 259

练习 259

第19章 多精度算法 261

19.1 接口 261

19.2 示例:另一计算器 266

19.3 实现 272

19.3.1 转换 276

19.3.2 无符号算法 278

19.3.3 有符号算法 280

19.3.4 简易函数 283

19.3.5 比较和逻辑操作 288

19.3.6 字符串转换 291

参考书目浅析 293

练习 293

第20章 线程 295

20.1 接口 297

20.1.1 thread 297

20.1.2 一般信号量 300

20.1.3 同步通信通道 302

20.2 示例 303

20.2.1 并行排序 303

20.2.2 临界区 307

20.2.3 生成素数 309

20.3 实现 312

20.3.1 同步通信通道 312

20.3.2 线程 314

20.3.3 线程创建与上下文转换 322

20.3.4 抢占 328

20.3.5 一般信号量 330

20.3.6 mips和alpha上的上下文转换 331

参考书目浅析 335

练习 336

附录 接口概要 339

参考书目 361

索引 367

更多简介内容

评论

下载专区


TI 参考设计资源库

工业电子 汽车电子 个人电子
$(function(){ var appid = $(".select li a").data("channel"); $(".select li a").click(function(){ var appid = $(this).data("channel"); $('.select dt').html($(this).html()); $('#channel').val(appid); }) })