怎么读到这本书的
记得有一次读陈皓的博文,具体哪一篇不记得了,大家在评论区吵翻了天。有人留言道:这些软件开发的哲学在《UNIX编程艺术》里面详细阐明了,不懂就看书。我不懂,就把这本书看了。
感想
首先一点,我非常不同意译者对本书作者的评论:“ESR实在是个美国愤青”。不知道译者怎么会有这种印象?我通读了全书,丝毫没有看到任何愤世嫉俗的言论和观点。作者的行文朴素而真诚,所有的观点都是有理有据,而且对自己所感所悟毫无保留。愤青?我可能不知道这个词的涵义吧。
其次,我不同意译者所说的“如果不是在UNIX里面长期浸淫,大概很难有所共鸣”。要气笑了我。UNIX以及Linux是人类历史上最具有影响力的最成功的大型软件开发项目,贡献了无数最佳开发实践。应该如何同这样的杰作产生共鸣呢?
借鉴前言里说到的: "与其说UNIX是个操作系统,不如说是一部口述的历史",在我看来,作者就像一个活的UNIX字典,而这本书就像UNIX的史诗。读历史有啥用?可以更好的理解自己的时代。读UNIX的历史呢?可以更好的理解自己的工作。
怎么读这本书
本书虽然有“艺术”这两个字在书名里,但实际上是一本“授之以渔”的书,适合通读。
备忘
- 什么是脚本语言:用来把应用/工具胶合起来的语言。
- UNIX的开发传统:先做prototype,然后不断的测试和演进。
- 主次版本号:主版本号为不兼容的更改,次版本号为添加了兼容的新功能,补丁号为bug fix和小功能。
- lint: 用这个工具来静态检查代码。相似的还有pylint,xmllint等。
- 透明性原则:程序应该可以展示自己在干什么(比如可以打开一个verbose或debug的开关)。
- 设计微型语言的原则:该语言应当作为高层策略的实现者,所以当以自上到下的原则来设计。而非作为底层原语的粘合剂。