附录C 精选书目

Advanced Programming in the UNIX®Environment, Second Edition

W.Richard Stevens and Stephen A.Rago (Addison-Wesley, 2005, ISBN-13: 978-0-201-43307-4)

中文版书名:《Unix环境高级编程》

一本深入详尽地介绍在Unix系统上使用Unix系统调用API和C标准库进行编程的书籍。(书中所有的代码都是用C写的。)

The Art of Multiprocessor Programming

Maurice Herlihy and Nir Shavit (Morgan Kaufmann, 2008, ISBN-13: 978-0-12-370591-4)

中文版书名:《多处理器编程的艺术》

这本书详细地介绍了最底层的多线程编程,对每一个关键技术都提供了优雅和完整的工作代码样例。

Clean Code: A Handbook of Agile Software Craftsmanship

Robert C.Martin (Prentice Hall, 2009, ISBN-13: 978-0-13-235088-4)

中文版书名:《代码整洁之道:敏捷软件开发技能手册》

这本书提出了很多战术性的编程技巧,例如好的命名习惯、函数设计、重构,等等。除此之外,还有很多非常实用和有趣的想法,能够帮助程序员改善他们的编码风格和让代码变得更加易于维护。(这本书的例子都是用Java写的。)

Code Complete: A Practical Handbook of Software Construction, Second Edition

Steve McConnell (Microsoft Press, 2004, ISBN-13: 978-0-7356-1967-8)

中文版书名:《代码大全》

本书旨在如何创建高质量的软件,超越语言特定的领域思想、原理和实践。让程序员深刻思考自己的编程。

Design Patterns: Elements of Reusable Object-Oriented Software

Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides (Addison-Wesley, 1995,ISBN-13: 978-0-201-63361-0)

中文版书名:《设计模式:可复用面向对象软件的基础》

现代最具影响力的一本编程书籍,但要消化这本书的内容并不容易。这些设计模式是非常迷人的,而且在我们每天的编程实践中都会用得到。

Domain-Driven Design: Tackling Complexity in the Heart of Software

Eric Evans (Addison-Wesley, 2004, ISBN-13: 978-0-321-12521-7)

中文版书名:《领域驱动设计》

这是一本关于软件设计方面的书,非常有趣,特别是对那些多人参与的大型项目很有用。本书主要是关于创建和改进领域模型(所谓领域模型,是用来表示系统设计目的的),并且还创建了一门贯穿整个系统各个方面的语言,也就是说,本书的读者并不限于软件工程师。

Don’t Make Me Think!: A Common Sense Approach to Web Usability, Second Edition

Steve Krug (New Riders, 2006, ISBN-13: 978-0-321-34475-5)

中文版书名:《点石成金:访客至上的网页设计秘笈》

一本关于Web方面的简短、有趣,而且非常具有实践性的书籍,其中给出了许多研究成果和实践经验,对提升网页设计很有帮助。

Linux Programming by Example: The Fundamentals

Arnold Robbins (Prentice Hall, 2004, ISBN-13: 978-0-13-142964-2)

中文版书名:《Linux程序设计》

一本介绍使用Linux系统调用进行Linux程序设计的书籍,实用,而且浅显易懂。(书中所有的代码都是用C语言写的。)

Mastering Regular Expressions, Third Edition

Jeffrey E.F.Friedl (O’Reilly, 2006, ISBN-13: 978-0-596-52812-6)

中文版书名:《精通正则表达式(第3版)》

这本书主要是介绍正则表达式,非常有趣而且有用。