这些故事之所以是附录,不是让你一上来就看的。
虽然有一定模仿中国的禅宗故事,其实围绕的还是 KISS 原则以及其它哲学之道:
- 万行码:http://i.linuxtoy.org/docs/guide/ch12s02.html
表面看,是在说 Unix 技术的优越,Unix 的管道机制是个伟大的发明,用来方便传递 IO 数据,快速将两条指令组合而实现更复杂的任务,比传统的 coding 要高效很多;
进一步看,讲的是把任务分解,化繁为简,再步步攻下,才是真正的实践之道;
当然,文中以管道为例,并非说 C 不好;
运用到目前的软件开发技术中,其实是 Agile Development,就是创建可复用的模块和组件,合理划分以及解耦,并尽可能开放简单通用的接口互操作;
只是 Unix 很早就把这个思想给解读透,并且付诸实践中;
- 脚本狂:http://i.linuxtoy.org/docs/guide/ch12s03.html
表面看,脚本狂自身的变化,从满口 Leet 语(比如 e = 3,o = 0 等黑客惯用语)到正常的语言;
进一步看,讲的是做人的道理,要做一名优秀的黑客,先学会做人;
- 双路论:http://i.linuxtoy.org/docs/guide/ch12s04.html
表面看,是说两条软件设计准则,简单和健壮,以及两者如何平衡;
进一步看,矛盾是具有对立和统一特性的;
对立的时候只需要关注该关注的方面,统一的时候,选择好折中点;
- 方法论:http://i.linuxtoy.org/docs/guide/ch12s05.html
表面看,似乎会让人一头雾水;
进一步看,任何事物都有强有弱,程序的弱如优化时的性能瓶颈,而渔夫的弱如不会游泳;
渔夫如果是只考虑产能(能捕到很多鱼),而忘记自己的弱(不会游泳),很有可能因为渔船超重而发生意外;
方法论其实是对于自己弱的地方能找到合适的补救方案,从而把事情做好;
- GUI 论:http://i.linuxtoy.org/docs/guide/ch12s06.html
这个有点难懂,请参考知乎问题:怎么理解《无名师的 GUI 论》?
- Unix 狂:http://i.linuxtoy.org/docs/guide/ch12s07.html
表面看,是在大师和 Unix 狂热者在讨论各种尊者的发明中的缺憾,却激怒了狂热者;
进一步看,狂热者之所以被激怒,正是因为缺少对事物客观的认知,而只看重各类技术带来的好处;
狂热者之所以不能成为大师,就如同文中最后所讲:「这些尊者之智,就是了解自身之愚」;
- Unix 传统论:http://i.linuxtoy.org/docs/guide/ch12s08.html
表面看,是在讨论 Unix 到底是什么,一般人的理解可能只是它的名字、或者源码,其实不然;
进一步看,Unix 之所以为 Unix,是因为它的编程艺术以及哲学思想,是因为 Unix 创始者将 coding 这种看似单调的工作提高到了艺术和哲学高度,并贯彻各种简单同时优秀的思想,融入代码之中,优雅地表现出来,这才是 Unix 的精髓。
结合全书,闲静下来的时候,多读多想,自然会有新的收获。
所以,以上均为个人阅读理解,欢迎指正。
— 完 —
本文作者:Dion
知乎是一个真实网络问答社区,在这里可以寻找答案、分享知识,发现一个更大的世界。
下载知乎 iPhone 客户端: http://zhi.hu/ios
下载知乎 Android 客户端: http://zhi.hu/zhwdj
此问题还有 3 个回答,查看全部。
没有评论:
发表评论