首页 | 论坛 | Linux | 博客 | 下载 | 人才 | 培训 | WIKI | 手册 | 图书 | 搜索  
ChinaUnix.net » IT业界新闻与评论 » Linux之父炮轰C++


2007-9-7 10:39 NetSpider
Linux之父炮轰C++

[url]http://blog.csdn.net/turingbook/archive/2007/09/07/1775488.aspx[/url]

Linux之父Linus Torvalds为了Linux内核开发而专门打造的版本控制软件Git已经引起了业界的广泛关注。昨天,有一位Dmitry Kakurin老兄在查看了源代码之后,发现使用的是纯C而非C++,表示不可理解,他直言:“别拿可移植性说事儿,这是屁话(BS,bullshit)。“(此外,他还批评Git蛮力地直接操作文本,既啰嗦又易错,而且很难跟上高层代码逻辑。)


这个BS引起了Torvalds的强烈反应,他用“*YOU* are full of bullshit.“(你才满嘴屁话呢)作为自己反驳的开场白。接着,他先转向了对C++的罕见的火药味十足的炮轰:
”C++是一种糟糕的(horrible)语言。而且因为有大量不够标准的程序员在使用而使情况更糟,以至于极容易产生彻头彻尾的垃圾(total and utter crap)。老实说,选择C就是为了把C++程序员踢出去。……我有这样的结论,任何喜欢用C++而不是C开发项目的程序员可能都是我希望踢出去的人,免得他们来搞乱我参与的项目。C++会导致非常非常糟糕的设计选择。你们这些C++程序员总是一上来就用语言的那些‘漂亮的’库特性比如STL、Boost和其他彻头彻尾的垃圾,这可能对你们的程序有所‘帮助’,但是却会导致:
“——当库无法工作时无穷无尽的折磨(别跟我说什么STL尤其是Boost很稳定而且可移植性很好,那全是屁话,而且一点都不可笑)
"——低效的抽象编程模型,可能在两年之后你会注意到有些抽象效果不怎么样,但是所有代码已经依赖于围绕它设计的‘漂亮’对象模型了,如果不重写应用程序,就无法改正。

”也就是说,使用优秀的、高效的、系统级的和可移植的C++的唯一方式,最终还是限于使用C本身具有的所有特性。项目限制只用C,意味着参与的人不会捣乱,也意味着会得到许多真正懂得底层问题,而不会折腾那些白痴‘对象模型’垃圾的程序员。

"所以,我很抱歉,但是对于Git这样效率是主要目标的软件,C++的所谓优点只是巨大的错误。而我们将看不到这一点的人排除在外却成了一个巨大的附加优势。

"如果你想要用C++写的版本控制系统,去玩Monotone吧。他们确实使用了‘真格的数据库’,使用了‘漂亮的面向对象库’、使用了‘漂亮的C++抽象’。可是说老实话,所有这些对某些计算机专业人士而言富于吸引力的设计决定,其最终结果确是一堆可怕、难以维护的垃圾。“
[img]http://www.pconline.com.cn/pcedu/empolder/life/0502/pic/04linus01.jpg[/img]

2007-9-7 10:41 tong0245
C++ 确实太复杂了 据说没人能够掌握所有的特性 。

2007-9-7 10:57 bluster
oh yeah~~~我喜欢这么直白的批评

2007-9-7 11:20 寂寞烈火
BS,bullshit, 又长只是啦~~ :mrgreen:

2007-9-7 11:22 NetSpider
BS是鄙视的意思么

2007-9-7 11:28 chinesedragon
我对C++本来就没有 好感~

2007-9-7 11:37 rhinux
非常喜欢这段言论

2007-9-7 11:45 醉卧水云间
原来Linus也是抱残守缺的家伙,现在还有几个大型项目用C做的?谁那么有钱敢用C来做?要效率为什么不用汇编去写?

2007-9-7 11:50 writeonly
支持

2007-9-7 11:52 lyyr
C,和C++都不是完美的
LINUS此言不得人心

2007-9-7 11:54 rhinux
要用c++自己也可以去写一个的,他发起的项目希望是用c的有什么不好的

2007-9-7 11:58 tony_trh
C++真的没必要出现

我也觉得,面向对象的东西其实是一堆垃圾,根本没多大用,还浪费人类太多的时间和财富,其实只要对原有的语言的缺陷进行一些改良就完全可以了,完全没必要新搞那么复杂的语言。真的好浪费人的时间和生命。

我现在也只搞C,至于C++我看也不看。

2007-9-7 12:08 xinglp
我一直用C,但是面向对象的思想还是可取的,也可以用在C中

2007-9-7 12:17 bilbo0214
应该允许百家争鸣。

2007-9-7 12:22 writeonly
[quote]原帖由 [i]lyyr[/i] 于 2007-9-7 11:52 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=7319930&ptid=987635][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
C,和C++都不是完美的
LINUS此言不得人心 [/quote]


仅仅是不得C++fans的人心而已。为什么要得C++fans的人心呢?人家的目的就是驱逐C++fans!

2007-9-7 12:22 imonyse
Linus对Richard Stallman对自由软件信条的执着,也没有好感。他曾经说过,"calling "GNU/Linux is ridiculous""我觉得他从来没有从RMS的角度考虑过问题。RMS为了自己的理想和信念,从1984年到现在,一直过着苦行僧似的生活,谁有权利用“伪君子”这个词来形容他?
最近我看过侯捷在CSDN专栏的一篇文章,也表露着类似的一种高傲。他的一个观点,大意约是他不愿意某种人成为他的读者,也对一些人提到的翻译著作的价格问题不以为然。评价一本书的价值和使用价值也是件难事,但是侯的文章,似乎和Bill Gates在上世纪70年代写给电脑爱好者的那封信一样,潜在的透露着对劳动获得金钱回报的money lust...

评价一个人是件费力不讨好的事,虽然大部分情况下,我愿意把这些理解成:一种知识分子的高傲。

2007-9-7 12:42 wsw1wsw2
面对对象是一个好的思想,但是把它做成语言的一种特性就是不太明智的选择。
谁说大型软件不能用C?

2007-9-7 12:54 lan_wjz
Support!!!

2007-9-7 13:12 musics
支持纯C,但是从养活自己的角度来看,用C的成本要高一些,多数客户在性能,开发效率,付出的代价之间,更愿意选择C++

2007-9-7 13:23 north
Linus这番话正反映了他本人以及开源社区相当一部分人的特征,即不奉行主流价值观。用gnu 的东西,会时常有这种感觉。
不能简单的说好或者坏,也许,可以说他们真正是“有个性”.

页: [1] 2 3 4 5 6
查看完整版本: Linux之父炮轰C++

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com



自怼圈/年番新

DU21.7
关于 ~ DebugUself with DAMA ;-)


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


粤ICP备18025058号-1
公安备案号: 44049002000656 ...::