秋霞久久久久久一区二区_亚洲91无码精品一区在线播放_欧美高清va在线观看_麻豆国产精品蜜桃va在线播放

Git為何不用C++開(kāi)發(fā)——Linus痛貶C++的經(jīng)典郵件

譯者/ 李松峰

圖靈QA部主任。2006年起投身翻譯,出版過(guò)譯著20余部,包括《JavaScript高級(jí)程序設(shè)計(jì)》、《簡(jiǎn)約至上》等暢銷(xiāo)書(shū)。2008年進(jìn)入出版業(yè),從事技術(shù)圖書(shū)編輯和審稿工作。

From: Linus Torvalds (torvalds (at) linux-foundation.org)

Subject: Re: [RFC] Convert builin-mailinfo.c to use The Better String Library.

Newsgroups: gmane.comp.version-control.git

Date: 2007-09-06 17:50:28 GMT (4 years, 8 weeks, 1 day, 20 hours and 54 minutes ago)

2007-9-5,周三,Dmitry Kakurin 寫(xiě)道:

>從第一次看到Git的源代碼起,就有兩件事如鯁在喉

>1.純C而沒(méi)有C++。不知道為啥。

>2.別提可移植,那都是胡說(shuō)。

才是胡說(shuō)八道。

C++是一門(mén)很惡心的語(yǔ)言。但更惡心的還是有一群下三濫的程序員在用它,結(jié)果弄出來(lái)的都是一堆堆的排泄物。坦率地說(shuō),就憑可以把那些C++蠢貨擋在門(mén)外這一條,就足以證明應(yīng)該使用C。

換句話說(shuō):使用C證明我們神經(jīng)沒(méi)有毛病。我知道Miles Bader曾開(kāi)玩笑說(shuō)要“氣死你”,但實(shí)際上是當(dāng)真的。我已經(jīng)想清楚了,不管是誰(shuí),只要他認(rèn)為這個(gè)項(xiàng)目使用C++會(huì)比使用C更好,我都更想“呸”他一口,好讓他滾得遠(yuǎn)遠(yuǎn)兒地,少來(lái)干擾我的項(xiàng)目。

C++會(huì)導(dǎo)致最最差勁的設(shè)計(jì)??偸且褂肧TL、Boost等等這些臭狗屎,還美其名曰“精巧”的語(yǔ)言庫(kù),倒是“幫”你編程了,可是卻會(huì)導(dǎo)致:

這么說(shuō)吧,要想弄出一個(gè)不錯(cuò)的、高效的、系統(tǒng)級(jí)的而且可移植的C++方案,唯一的結(jié)果就是把自己限制住,而這些在C里面都可以信手拈來(lái)。把項(xiàng)目限制用C來(lái)開(kāi)發(fā),意味人們不會(huì)搞砸它,也意味著很多程序員實(shí)際上都理解底層的問(wèn)題,不會(huì)用白癡的“對(duì)象模型”把問(wèn)題搞得無(wú)解。

所以真的很抱歉,但對(duì)于Git來(lái)說(shuō),效率一直都是主要目標(biāo),C++的“優(yōu)勢(shì)”只能釀成巨大的錯(cuò)誤。而讓我們有機(jī)會(huì)對(duì)那些看不到這一點(diǎn)的人吐唾沫只不過(guò)是它的另一個(gè)很大的附加優(yōu)勢(shì)。

如果你想要一個(gè)C++寫(xiě)的VCS,試試Monotone。真的,它使用“真正的數(shù)據(jù)庫(kù)”,用了很多“出色的面向?qū)ο髱?kù)”,還用了“出色的C++抽象”。恕我直言,這些設(shè)計(jì)決策雖然可以讓那些CS迷們神魂顛倒,但結(jié)果必然是極其惡心、難以維護(hù)的大雜燴。

但是,我相信你一定會(huì)選它而不是Git。

Linus

原文鏈接:http://article.gmane.org/gmane.comp.version-control.git/57918