【UNIX痛恨者手册】摘选

leafsoar 2011-07-31 11:29:08

小的程序比正确的程序更好
粗制滥造是可以接受的
如果必须作出选择,选择责任最小的那个。


UNIX没有哲学,UNIX只有态度。这个态度指出简单的做了一半的工作比复杂完整的工作
更好。这个态度指出程序员的时间比用户的时间更为珍贵,即使用户比程序员要多得多
。这个态度指出达到最低要求就足够了。


/* you are not expected to understand this */ (/* 没指望你能明白 */)


标题:“无言UNIX”
对象:UNIX新手
简介:提供在没有文档条件下使用UNIX的通用策略。展示在没有文档条件下摸清任何操
作系统的通用原则。
内容:
介绍:“无文档”哲学简介
为什么手册是恶魔
为什么man手册是恶魔
为什么你还是应该读这份文档
“这将是你读的最后一份文档!”


和其他操作系统不同,Unix把bug供奉为标准操作。之所以那么多Unix bugs得不
到修正,这里有个不可告人的原因——如果修正了,那么已有的一些程序就会死
逼了。然而,荒唐的是,Unix程序员在增加新功能时却从来不去考虑向下兼容。


Unix程序员总是打着“这会破坏已有代码”的幌子,不愿意修正bug。可这里面
还有内幕,修正bug不但会破坏已有代码,还必须修改简单完美的Unix接口,而
这正是Unix教众们的命根子。至于这个接口是否工作,这并不重要。Unix教众们
不去提出更好的接口,也不去修正bug,而是齐声高唱“Unix接口好简洁,好简洁。
Unix接口就是美,就是美!Unix无罪!Unix有理!”。

不幸的是,绕过bug是个很恶劣的行为,它使得错误成为了操作系统规范的一部
分。你越是等,就越难以修正,因为越来越多的程序会尽力绕过bug,以至于没
有了bug反而活不了了。同理,修改操作系统接口带来的影响更大,因为更多的
程序必须根据这个正确的新接口进行修改。(这解释了为什么ls有那么多的选项
来完成几乎一样的工作)。

如果你把一只青蛙仍到开水里,它会马上跳出来。它知道开水很烫。可是,如果
你把青蛙放到冷水里,再慢慢地加热,青蛙感觉不到什么,直到最后被烫死。

Unix接口已经开锅了。以前,输入/输出的全部接口只包括open,
close, read和write。网络支持给Unix添了一大把柴禾。
现在,至少有五种方法向一个文件句柄输入数据:write,
writev, send, sendto和sendmsg。每个都在内
核中有不同的实现,这意味着有五倍的可能出现bug,有五种不同的性能结果需
要考虑。读文件也一样(read, recv, recvfrom和
recvmsg)。等死吧,青蛙们。


“如果说C语言给了你足够的绳子吊死自己,那么C++给的绳子除了够你上
吊之外,还够绑上你所有的邻居,并提供一艘帆船所需的绳索。”



UNIX痛恨者手册

这才是真正的Unix啊,哈哈
...全文
662 20 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
aghdashloo 2012-05-03
  • 打赏
  • 举报
回复
此书的几个作者,都是因为恨 UNIX 恨到“人生长恨水长东”的境界了,于是乎搞了个邮件组,广泛收集各种愤怒,最后基于邮件组里面张贴的各种抱怨,编撰成了痛恨者手册这样一本书,来专门宣泄对 UNIX 的愤怒,也算得上是空前绝后了。其实,作者的抱怨中,真正属于 UNIX 固有问题的只占 50%,其他如对 sendmail 排山倒海的批评,对 C++ 的尽情嘲弄,实际上都不属于 UNIX 系统特有的。其他的 50%,则颇有历史意义,可以看到当年的 UNIX 系统是何其的“原始”。特别是对照现在的 Linux 来看,可以看出 Linux 作为当年 UNIX 的继承人,在文件系统,安全性,稳定性等等方面的巨大的进步。
无情冰雨 2012-04-11
  • 打赏
  • 举报
回复
犀利!
leafsoar 2012-04-01
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]

当windows下的一些文件让你删不掉时,你的心就不静了。
[/Quote]
当windows下的一些文件让你删不掉时,我可以到*nix下面删,还没遇到删不掉的 ^_^
ljhhh0123 2012-03-27
  • 打赏
  • 举报
回复
当windows下的一些文件让你删不掉时,你的心就不静了。
老鼠期待爱 2012-03-21
  • 打赏
  • 举报
回复
哪里有完美的语言……
mingchaoyan 2012-02-26
  • 打赏
  • 举报
回复
有意思
wzb56 2012-02-22
  • 打赏
  • 举报
回复
“如果说C语言给了你足够的绳子吊死自己,那么C++给的绳子除了够你上
吊之外,还够绑上你所有的邻居,并提供一艘帆船所需的绳索。”

hehehe
dongmusic 2011-12-15
  • 打赏
  • 举报
回复
不同的看法,很有意思啊.
phpman_cn 2011-12-01
  • 打赏
  • 举报
回复
顶 不同的看法,不同的观点
2011-09-27
  • 打赏
  • 举报
回复
这个可以顶~
crystalbug 2011-09-27
  • 打赏
  • 举报
回复
个人水平跟Unix是否优劣是没有关系的,如果一个操作系统可以成为世界上使用率最高的系统,同样一个微小的技术小波折也可以让一个无能懦弱者屁滚尿流
懿德 2011-09-08
  • 打赏
  • 举报
回复
另辟溪径的观点。。。哈哈
renjianguokeivor 2011-09-02
  • 打赏
  • 举报
回复
lz太强大了
jackyjkchen 2011-08-13
  • 打赏
  • 举报
回复
很好的文章,以前看过
jlfzhz 2011-08-12
  • 打赏
  • 举报
回复
steptodream 2011-07-31
  • 打赏
  • 举报
回复
如果说C语言给了你足够的绳子吊死自己,那么C++给的绳子除了够你上
吊之外,还够绑上你所有的邻居,并提供一艘帆船所需的绳索。
sadever 2011-07-31
  • 打赏
  • 举报
回复
算你狠
freetstar 2011-07-31
  • 打赏
  • 举报
回复
如果说C语言给了你足够的绳子吊死自己,那么C++给的绳子除了够你上
吊之外,还够绑上你所有的邻居,并提供一艘帆船所需的绳索。
jsjygm 2011-07-31
  • 打赏
  • 举报
回复

2,163

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 UNIX文化
社区管理员
  • UNIX文化社区
  • 文天大人
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧