日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
臟話越多,代碼越好!

?你在讀開源代碼的時(shí)候有沒有遇到過(guò)這種注釋?

創(chuàng)新互聯(lián)公司是專業(yè)的馬關(guān)網(wǎng)站建設(shè)公司,馬關(guān)接單;提供做網(wǎng)站、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行馬關(guān)網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

What the fuck ?

Dude,WTF

Fuck this !

我遇到過(guò),每次都忍不住笑,心想老外可真是性情中人,遇到不爽的地方就開罵,還直接寫到注釋中,甚至代碼中。

Bob大叔在《Clean Code》一書中諄諄教導(dǎo)我們:要對(duì)變量、函數(shù)、類精心命名,避免耍小聰明,別使用雙關(guān)語(yǔ)。

那么在注釋甚至在代碼中說(shuō)臟話,會(huì)不會(huì)影響總體代碼質(zhì)量呢?

還真有人做了這個(gè)研究,Jan Strehmel,一個(gè)來(lái)自德國(guó)卡爾斯魯厄理工學(xué)院的學(xué)生發(fā)表了一篇論文,名稱就叫《在開源代碼中臟話的使用和代碼質(zhì)量之間有相關(guān)性嗎?》

為了研究這個(gè)問(wèn)題,作者從GitHub中抓取了3800個(gè)含臟話的C代碼庫(kù),7600個(gè)不含臟話的C代碼庫(kù),用自家的軟件SoftWipe分析它們對(duì)編碼標(biāo)準(zhǔn)的遵守情況,逐個(gè)打分。

然后發(fā)揮他在統(tǒng)計(jì)學(xué)的技能,用了中心極限定理,Bootstrapping,Significance testing,Jarque-Bera test,Shapiro-Wilk test,Q-Q plot,Kolmogorov-Smirnov test ......,一頓操作猛如虎,最后他得到了一個(gè)驚人結(jié)論:

包含臟話的開源代碼明顯比不含臟話的質(zhì)量更好!

(原論文有很多圖,感興趣的可以去看看)

面對(duì)這個(gè)結(jié)果,作者恐怕也沒想到,他試圖解釋到:臟話代表了程序員對(duì)代碼極其復(fù)雜性的情感!在寫代碼的時(shí)候,罵幾句臟話,是緩解壓力的一種方式,這反過(guò)來(lái)?可以提?注意?,從而提?代碼質(zhì)量。

當(dāng)然,你可千萬(wàn)不要理解成只要在代碼中用了臟話,代碼質(zhì)量就會(huì)有提高,那就大錯(cuò)特錯(cuò)了。

這個(gè)結(jié)果讓我立刻想到了Linus Torvalds,他經(jīng)常Fuck 這個(gè),F(xiàn)uck那個(gè)的,Linus在內(nèi)核源碼中對(duì)別人代碼的評(píng)論就足以扭曲統(tǒng)計(jì)結(jié)果。

在Linux最早的幾個(gè)版本中就出現(xiàn)fuck, shit ,damn這樣臟話,這似乎成了一種Linux的文化,在后續(xù)Linux源碼中各種臟詞不斷出現(xiàn)。

在2005年7月28號(hào),fuck*達(dá)到了頂峰,足足出現(xiàn)了68次,隨后逐漸下降。

而 idiot* 則一致是在緩慢上升,現(xiàn)在和damn* 并駕齊驅(qū),不分上下。

但是,這些臟話并不影響Linux內(nèi)核是優(yōu)秀代碼的典范(詳情參見這一篇文章《漫畫 | 因?yàn)橛昧薈語(yǔ)言,Linux內(nèi)核代碼一團(tuán)糟?》),以Linus Torvalds為首的團(tuán)隊(duì)對(duì)代碼結(jié)構(gòu)和風(fēng)格做了嚴(yán)格的定義,在Review中堅(jiān)持執(zhí)行。

在Java社區(qū),開源代碼中的臟話也不少。

2018年,IBM 軟件工程師 Adam Farley 給 OpenJDK 提交了一個(gè) Bug ,說(shuō) OpenJDK 源碼中臟話太多了,到處都是,OpenJDK是在專業(yè)領(lǐng)域使用的,這太不合適了吧?這不我特意提交了一個(gè)Changset把它們都刪了。

3天后,經(jīng)過(guò) OpenJDK 社區(qū)討論,大家認(rèn)為:

Damn 和 Crap 不算臟話!還有3 個(gè) f**k,是上游的鍋(回頭會(huì)跟進(jìn)處理),只有一個(gè)文件中的f**k,都是臟話,應(yīng)該刪掉。

為什么程序員喜歡在源碼中用臟話表示自己的想法呢?

代碼是程序員每天都要面對(duì)的工作對(duì)象,對(duì)代碼確實(shí)會(huì)出現(xiàn)復(fù)雜的情感,有時(shí)候需要一種情緒的宣泄。

看到一段高深的,自己無(wú)法理解的代碼,what the fuck?

好不容易把一段復(fù)雜邏輯的各種分支,邊界條件都搞定了,代碼實(shí)在是亂,don't fuck with it !

花了很大的精力寫完了邏輯,卻發(fā)現(xiàn)有個(gè)異常無(wú)法處理,damn,damn,damn

......

咱們國(guó)內(nèi)程序員似乎比較含蓄,很少在代碼中寫臟話,更喜歡吐槽公司,吐槽系統(tǒng),是不是這樣?

不過(guò),一定要記住一點(diǎn):當(dāng)在代碼評(píng)論中出現(xiàn)臟話時(shí),你就要小心了,不要輕易動(dòng)下面的代碼,弄不好就是個(gè)大坑!

參考資料:

https://cme.h-its.org/exelixis/pubs/JanThesis.pdf

https://www.vidarholen.net/contents/wordcount


當(dāng)前題目:臟話越多,代碼越好!
鏈接URL:http://m.5511xx.com/article/cocdsph.html