“驳”还是“不值一驳”

来源:互联网 发布:李炎恢 php 讲义 编辑:程序博客网 时间:2024/05/02 20:50
        近来csdn上各路好手都对一篇名为“C语言已死”的文章大加批驳,其中许式伟的驳“C语言已经死了”中的分析可谓深得人心,今天猛禽又以一篇名为“不值一驳”的文章对“C语言已死”作出了回应。那么,到底是“驳”还是“不值一驳”呢?

       看到“C语言已死”这个标题的时候原以为又是哪个不知死活的毛头小伙的耸人听闻之辞,但是文章开头的这段话让我了继续往下看的兴致。
我用C语言编程已经超过20年了。我写过C语言的编译器、C语言的调试器、用C开发的其他语言、游戏、客户端程序和服务器程序,你说吧!还有什么是我没写过的。还有我的书架上充斥着折了角的K&RSteele的书。

        作为EclipseZone.com的主编,Ed Burnette为什么会写这样的文章来中伤一个陪伴自己20的语言,这是我想知道的。根据csdn上的线索,”C语言已死“一文的来源是www.51cto.com,链接在这里,而作者的原文则在Ed的blog上,题为Die, C, die! 5 reasons to UN-learn C.。

        Die, C, die! 5 reasons to UN-learn C.是作者对一篇题为Ten reasons why every programmer should learn C的文章作出的回应。不知是不是因为翻译的问题,Die, C, die! 5 reasons to UN-learn C.原文给人的感觉还是比较客观的,用一个老程序员的抱怨指出了C语言中存在的不足,而译文却给我强烈的想要对它进行批驳的欲望。

        我觉得,作者对于C语言的这些抱怨与目前所做的工作有关,一个经历过太多因为内存分配、释放、野指针、没有单元测试工具造成的BUG的人,如今却身为EclipseZone.com的主编,整日与Java为伍,怎能不为其的简单性动容。反过来看这个问题,从现在的角度来看C语言的基础设施确实有过于简单之嫌,但是增加诸如数组边界值检查之类的特性却又与C的价值观不符,这其实都源于C语言的定位,这点在猛禽的文章中表述得很清楚

        语言本身并没有优劣之分,只有适用的场合不同,正如我们都知道的那样,拿Java来编写操作系统,或者是拿汇编来编写Web应用都是愚蠢的做法。所以,只要还有适合C语言的场合,C语言就不会死;只要有新的应用场合出现,新的语言也会被设计和应用。难不成到时又要来一篇“Java已死”?

        PS:对于51CTO上语不惊人死不休的翻译,表示一下愤怒。
原创粉丝点击