内容简介
本书的作者将Unix三十年中未见纸端的艰难胜利的软件工程智慧熔入文字。使Unix家庭成为最最具创新软件的哲学、设计模式、工具、文化和传统,Raymond将之第一次带给我们,并向我们展示它们如何影响当今的Linux和开源运动。通过大量来自顶尖项目的实例,你将学会如何运用这些智慧经验来建造更优雅、更可移植、更加好用的更加长久的软件。
本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S.Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的内容。本书内容涉及社群文化、软件开发设计与实现,覆盖面广、内容深邃,完全展现了作者极其深厚的经验积累和领域智慧。
作者不仅给出了很多在程序设计方面的宝贵经验,还讲述了UNIX的历史,预测未来的唯一方法就是研究历史.而在目前的计算机领域,关于计算机历史的书籍和资料真是少的可怜.而且阅读此书时让人感觉正在同你讲话的是一位长者,而不仅仅是一位教师,所以这本书我一定要买。
――网友
正所谓“功夫在诗外”,并不能为了编程而编程(更多地为了求生,嘻嘻),而应该为了艺术而编程,这样才能从编程之外发现许多可以借鉴并让编程成为艺术的灵感,例如,当前来自于建筑学的设计模式就是一例。或许,当我们真正为艺术而编程的时候,也就往往开始迈出了从普通工匠到艺术家大师的征途,这大概就是影响了一代又一代Knuth大师的本意之所在吧。
――何源
编辑推荐
作者不仅给出了很多在程序设计方面的宝贵经验,还讲述了UNIX的历史,预测未来的唯一方法就是研究历史.而在目前的计算机领域,关于计算机历史的书籍和资料真是少的可怜.而且阅读此书时让人感觉正在同你讲话的是一位长者,而不仅仅是一位教师,所以这《UNIX编程艺术》我一定要买。
――网友
正所谓"功夫在诗外",并不能为了编程而编程(更多地为了求生,嘻嘻),而应该为了艺术而编程,这样才能从编程之外发现许多可以借鉴并让编程成为艺术的灵感,例如,当前来自于建筑学的设计模式就是一例。或许,当我们真正为艺术而编程的时候,也就往往开始迈出了从普通工匠到艺术家大师的征途,这大概就是影响了一代又一代Knuth大师的本意之所在吧。
――何源
目录
序
Part 1
第1章 哲学
1.1 文化?什么文化?
1.2 Unix 的生命力
1.3 反对学习Unix 文化的理由
1.4 Unix 之失
1.5 Unix 之得
1.5.1 开源软件
1.5.2 跨平台可移植性和开放标准
1.5.3 Internet 和万维网
1.5.4 开源社区
1.5.5 从头到脚的灵活性
1.5.6 Unix Hack 之趣
1.5.7 Unix 的经验别处也可适用
1.6 Unix 哲学基础
1.6.1 模块原则:使用简洁的接口拼合简单的部件
1.6.2 清晰原则: 清晰胜于机巧
1.6.3 组合原则:设计时考虑拼接组合
1.6.4 分离原则: 策略同机制分离,接口同引擎分离
1.6.5 简洁原则:设计要简洁,复杂度能低则低
1.6.6 吝啬原则: 除非确无它法,不要编写庞大的程序
1.6.7 透明性原则:设计要可见,以便审查和调试
1.6.8 健壮原则: 健壮源于透明与简洁
1.6.9 表示原则: 把知识叠入数据以求逻辑质朴而健壮
1.6.10 通俗原则:接口设计避免标新立异
1.6.11 缄默原则:如果一个程序没什么好说的,就保持沉默
1.6.12 补救原则: 出现异常时,马上退出并给出足量错误信息
1.6.13 经济原则: 宁花机器一分,不花程序员一秒
1.6.14 生成原则: 避免手工hack,尽量编写程序去生成程序
1.6.15 优..