The Art of UNIX Programming

The Art of UNIX Programming

作者:[美国]EricS·Raymond

出版社:Addison-Wesley

出版年:2003-10-3

评分:9.1

ISBN:9780131429017

所属分类:行业好书

书刊介绍

内容简介

Writing better software: 30 years of UNIX development wisdom In this book, five years in the making, the author encapsulates three decades of unwritten, hard-won software engineering wisdom. Raymond brings together for the first time the philosophy, design patterns, tools, culture, and traditions that make UNIX home to the world's best and most innovative software, and shows how these are carried forward in Linux and today's open-source movement. Using examples from leading open-source projects, he shows UNIX and Linux programmers how to apply this wisdom in building software that's more elegant, more portable, more reusable, and longer-lived.

精彩摘录

模块化代码的首要特质就是封装。封装良好的模块不会过多向外部披露自身的细节,不会直接调用其他模块的实现代码,也不会胡乱共享全局数据。模块之间通过应用程序变成接口(API)——一组严密、定义良好的程序调用和数据结构来通信。这就是模块化原则的内容。有一种很好的方式来验证API是否设计良好:如果是这用纯人类语言描述设计(不许摘录任何源代码),能否把事情说清楚?养成在编码前为API编写一段非正式书面描述的习惯,是一个非常好的办法。实际上,一些最有能力的开发者,一开始总是定义接口,然后编写解药的注释,对其进行描述,最后才编写代码——因为编写注释的过程就是阐明了代码必须要到的目的。这种描述能够帮助你组织思路,本身就是十分有用的模块说明,而且,最终要可能还想把这些说明做成路标文档,方便以后的人阅读代码。

——引自第85页


不要重复自身(Don'tRepeatYourself),意思是说:任何一个知识点在系统内都应当有一个唯一、明确、权威的表述。在本书中,我们更愿意根据BrainKernighan的建议,把这个远程称为“真理的单点性(SinglePointOfTruth)“或者SPOT原则数据结构也存在类似的SPOT原则:”无垃圾,无混淆(Nojunk,noconfusion)“。”无垃圾“是说数据结构(模型)应该最小化,比如不要让数据结构太通用,居然还能表示不可能存在的情况。”无混淆“是指在真实世界中绝对明确清晰的状态在模型中也应该同样明确清晰。简言之,SPOT原则就是提倡寻找一种数据结构,使得模型中状态跟真实世界系统的状态能够一一对应。

——引自第91页

相关推荐

微信二维码