C语言接口与实现

(美)David R. Hanson

出版时间

2010-07-31

ISBN

9787115231130

评分

★★★★★

标签

计算机

书籍介绍
这本书最鲜明的立场,是面对面向对象浪潮时的“逆流行事”:它固执地主张用C语言也能构建可重用、可维护的API。对许多读者而言,这种坚持恰恰构成了它的价值——不是教你语法,而是教你如何在缺乏语言支持的情况下,把接口与实现干净地分离开来。全书以24个真实接口为骨架,从异常处理、内存管理到并发,把抽象的设计原则落到具体代码上,读起来像跟随一位资深工程师的完整思路。它适合已掌握C基础、渴望理解“如何设计一套好接口”的程序员;但如果你期待轻松入门,前文密集的文学化写作风格可能会让你觉得“好难懂”。它更像一本值得反复回看的工程范本,而非速查手册。
作者简介
David R.Hanson 普林斯顿大学计算机科学系教授,有着二十多年编程语言研究经验。他曾经同贝尔实验室合作开展研究工作,是适用于UNIX系统上的高质量C编译器Icc的开发者之一。另著有A Retargetable C Compiler: Design and Implementation一书。
精彩摘录
  • "List_append: while(*p) p = &(*p)->rest;"
目录
1 Introduction 1
1.1 Literate Programs 2
1.2 Programming Style 8
1.3 Efficiency 11
Further Reading 12

显示全部
用户评论
面向对象不是银弹!
吃透了可以干一大票事情
The second C book you should read after "The C programming language", maybe better than the first one^^
好难懂啊~
异常框架甚是喜欢。
大一时候看的? 不过跳了好多,当时当成做数据结构入门了,暑假在家时候突然想翻一下,回校后大致过了一遍,有些东西当时看得懂就呵呵了......
此书太棒了!强烈推荐
难得一见的高品质代码。相对而言低级字符串那章差一些。这本书不是工程上最好的做法,但有很高的参考价值。第3章大谈异常,但仍然没提及怎样处理由setjmp、longjmp引入的资源泄露问题(我认为finally几乎不可用。我认可的只有GC、RAII、defer、using、with等做法)
handful of industrial-level robust code, although the literacy coding style is weird
求书
收藏