无所不在的K.I.S.S——《Unix编程艺术》书评
本文同步发于原作者的blog: http://www.vingel.com/blog/43
这本书我已经买了三个星期,一直在看。以前看它的英文版,仅仅走马观花般看了一遍。现在这个中文版,目前为止我已经看了三遍,而每次都会有新的体会。我得到的关于《Unix编程艺术》最深的感想就是:Unix中无所不在的K.I.S.S(Keep It Simple, Stupid)原则。
显然,Unix的设计中贯彻了这个原则,而且连Unix下的软件也深刻地受到这个原则的影响。比如ed,head这些
小程序。《注重实效的程序员》中也提到过著名的Unix哲学:“提供锋利的小工具,其中每一样都意在吧每一件事情做好。Unix因围绕这样的哲学进行设计而著称。”
另外,Eric还另外阐述了Linux开发原则(这个原则他在《大教堂与市集》一文中说过),”如果有足够的眼睛关注,那么所有的bug将无处藏身。”
还有,该书附录D中的《无根的根:无名师的Unix心传》很有意思啊,该附录模仿中国的禅宗故事,写下了关于Unix的传说。这些故事与Jargon File中提到的相映成趣,原来Hacker们也很搞笑有趣的。
摘录一个故事如下:
《无名师与方法论》
无名师和学生Nubi在圣地行走,无名师习惯在晚间为城市和乡村的Unix新门徒布道。
一次,聆听者中混入了一名方法论者。
“优化程序时不对热点进行反复衡量,就像渔夫把网撒入空湖中。”无名师说。
“那么,”方法论者说,”管理资源时不持续地衡量你的产能,不也像渔夫将网撒入空湖中么?”
“我一次碰到一个渔夫时,他正将网撒入船下的湖中,”无名师说,”他摸了好一会儿船底,像在寻找他的船。”
“但是,”方法论者说,”如果他把网撒入湖中,为什么他还要找船呢?”
“因为他不会游泳.”无名师答道。
听到这,方法论者眼中一亮。
怎么样,你能否猜出是模仿自哪个禅宗故事吗?
无所不在的K.I.S.S——《Unix编程艺术》书评相关推荐
- 读《UNIX编程艺术》随记
2012-07-07 <UNIX编程艺术>这本书是人介绍的, 一看到这书的厚度,我有想打退堂鼓的冲动.好厚的说. 不过,听到可以不用细也可以,就硬着头接下这本书了. 先看它的书皮,一位师傅 ...
- 【转载】Unix编程艺术——Unix哲学
Unix编程艺术主要介绍了Unix系统领域中的设计和开发哲学.思想文化体系.原则与经验.此文大致摘录了Unix的哲学. web程序员也应该看看此书,软件开发和web开发很多地方都是相通的.看完之后,我 ...
- Unix编程艺术——Unix哲学
题外话:一个月之前,刚刚读完<unix编程艺术>这本据说有些"愤青"的书,读书的过程,感觉是种享受,不但unix本身是艺术,连作者著书也是艺术,本想就本书写篇读感,但是 ...
- Unix 哲学的一些原则——《Unix 编程艺术》
Unix 哲学是在 Unix 先哲们和 Unix 本身所作出的榜样中体现出来的.可以概括为以下原则: 模块原则:使用简洁的接口拼合简单的部件. 用清晰的接口把若干简单的模块组合成一个复杂软件. 这样, ...
- 三读《UNIX编程艺术》
三读<UNIX编程艺术> 第一次读<UNIX编程 艺术>是2004年的夏 ...
- [总结]Unix设计哲学 Unix编程艺术
转载请注明出处:http://blog.csdn.net/horkychen 学习了<<Unix编程艺术>>第一章关于哲学的部分, 做个汇总. 现在对精简设计, 舍弃华而不实是 ...
- 《Unix 编程艺术》 理解
一:机制, 而不是策略 Unix文化贯穿始终的一条设计主线, 被翻译为: 机制, 而不是策略(Mechanism, not policy), 这句话的英文解释如下: The distinction b ...
- 《UNIX编程艺术》读书笔记
<!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso- ...
- Unix编程艺术和代码大全比较阅读
最近在看Unix编程艺术,收获颇多,联想起以前看过的同样获益匪浅的代码大全,突然萌生出比较两者观点的想法,那就开始吧. Unix编程艺术:简称U. 代码大全:简称C. 1) 函数的长度 U ( 4.1 ...
- UNIX编程艺术感觉这本书,挺好的,不知道大家看过没呢?
介绍了Unix系统领域中的设计和开发哲学.思想文化体系.原则与经验,由公认的Unix编程大师.开源运动领袖人物之一Eric S. Raymond倾力多年写作而成. 其实,我也没有看过这本书,但是一直都 ...
最新文章
- 设计模式 之美 -- 建造者模式
- 学生教育云平台登录入口_湖南省教育云平台登录入口
- 【Java Web开发指南】线程安全和单线程
- 如何保护企业网络免受DDoS攻击?—Vecloud微云
- Oracle数据库备份恢复,巡检须要关注的对象设置以及相关恢复概述
- 格式化输出,while循环,运算符,初识编码
- kafka生产者API操作
- 经典合成器插件 – LennarDigital Sylenth1 2.2.1 WiN-MAC
- iPhone 日历事件自动消失
- ie不能加载java_解决IE中页面Java无法加载的问题
- mysql语句重命名索引_如何重命名MySQL中的索引
- IDEA连接mysql后,schemas中无表格
- 解决ubuntu18.04无法连接wifi问题
- MySQL的计算时间差
- 海拔高度对电子产品性能的影响及要求
- vuejs2.0 数组操作 提示Cannot read property 'push' of undefined
- Android Studio《一行代码》3.3.4 百分比布局
- HighNewTech:展望未来之十大颠覆技术
- 智慧校园整体解决方案-最新全套文件
- 一个初学编程的草根大叔用了一个月时间冲上周榜第二名!给想冲榜的后浪们谈谈小经验——