程序員永遠(yuǎn)的雞血:編程語言之爭
最近微博上很熱鬧,各路大牛悉數(shù)出馬,討論大家都很鄙視卻又時(shí)不時(shí)拿出來爭個(gè)面紅耳赤的“語言”問題。此番場景甚是熟悉,就如《西游記》隔那么一段時(shí)間就要拿出來翻拍一遍……
首先是 @tinyfool 發(fā)表了簡單直接的觀點(diǎn)“Objective-C顯然是最好的語言,沒有之一”,我充分相信這是 tinyfool 為了活躍 Tiny4Cocoa 社區(qū)氣氛,有意拋出的話題。
隨后 @寒冬winter 發(fā)表了《我心中編程語言的評價(jià)標(biāo)準(zhǔn)》,我不知道這篇文章跟 tinyfool 的觀點(diǎn)是否有關(guān)系。寒冬從方法論的角度闡述了如何評判編程語言的好壞。沒有偏向任何一門語言,強(qiáng)調(diào)的觀點(diǎn)是“物盡其用”,沒有好與不好的語言,只有合適與不合適的語言。
我估計(jì) @莊表偉 ,是看了寒冬的文章,所以發(fā)表了《聊聊語言之爭》。莊表偉雖然認(rèn)為語言之爭不必有,但是語言還是有差別的。比如他熱愛的 Ruby 就比 C++好……這個(gè)邏輯似乎挺矛盾。
隨后 @左耳朵耗子(陳皓) 在酷殼發(fā)表了重量級文章《C++的坑真的多嗎?》。 這篇文章旁征博引,首先闡述的是 C++ 比 C 要好,然后表達(dá)了 C++ 之所以坑多是因?yàn)槟悴粫?,隨后陳皓講述了 C++ 歷史和未來,并表達(dá)了自己對于 C++ 的情感。文章涉及到很多知識點(diǎn),是值得學(xué)習(xí)的好文。陳皓在撰寫的時(shí)候措辭非常謹(jǐn)慎,極力的想要避免“語言之爭”,殊不知這篇文章將此次爭論推向高潮。
在看了陳皓的文章之后 @Laruence (惠新辰) 終于憋不住了,發(fā)表了《關(guān)于語言的選擇-選易用的》因?yàn)樗约涸?jīng)因?qū)W不會 C++ 而放棄了 C++。他認(rèn)為一門語言最大的有點(diǎn)就是易于上手,而不是本末倒置把大量精力放在學(xué)習(xí)“工具”的使用上?;菪鲁秸J(rèn)為 C++ 相對于 C 并沒有擴(kuò)展更多可適用的場景, 也沒有提升性能, 更沒有提高多少開發(fā)效率。他建議開發(fā)者要選擇可以迅速上手并解決實(shí)際問題的語言,比如他正在維護(hù)的 PHP 語言。
最后 @老趙 終于坐不住了,發(fā)表了《我對“語言之爭”的看法:別隨便拉我入場》。 我剛看老趙這個(gè)標(biāo)題沒理解他是想入場還是不想入場,還是想強(qiáng)調(diào)他不是一個(gè)隨便的人?老趙的這篇文章將語言之爭推向一個(gè)新的高度,“大部分人沒有資格討論語 言優(yōu)劣”!他認(rèn)為編程語言是一門課,一門學(xué)科,不是什么惹人都自然懂自然會的東西,所以在仔細(xì)閱讀相關(guān)書籍之前,你沒有資格發(fā)表意見。
我認(rèn)為這場語言之爭很精彩,有很多獨(dú)到的觀點(diǎn),仔細(xì)閱讀能也學(xué)到不少知識。于是總結(jié)整理了一下,僅供參考。
選編程語言就如初戀,一見鐘情,很多時(shí)候是命運(yùn)安排你學(xué)習(xí)了一門語言,那個(gè)年少懵懂的你偏偏不小心愛上了它,于是難免情人眼里出西施。所以關(guān)于語言的爭論帶有太多個(gè)人的經(jīng)歷和情感因素,可能是程序員世界唯一不符合邏輯的話題 :)