你見過最垃圾的代碼長什么樣?(來長長見識)
來源:blog.csdn.net/daocaokafei/article/
details/120733959
19個人們真正編寫的垃圾代碼片段,其中一個可能是你寫的。
在某些時候,它發(fā)生在我們所有人身上。你產(chǎn)生了你并不感到自豪的代碼。這些代碼讓你懷疑,"我怎么會寫出這樣的東西?"這沒什么好羞愧的。我們只是人類。有時候,我們就是沒有做到最好。
它發(fā)生在我身上,發(fā)生在你身上,但它也發(fā)生在其他開發(fā)者身上。我花了點時間,收集了我能找到的最糟糕的代碼片斷。今天,我將把它們介紹給你們。
然而,我只在一個條件下這樣做。你必須向我保證你不會以惡劣的方式對待他們。記住,在某些時候,你可能寫過類似的東西。既然如此,讓我們戴上豁達的眼鏡,玩一玩。第一篇來了!
重新造輪子出錯了
常規(guī)的布爾類型比較沒有返回你要找的東西。你應(yīng)該怎么做?答案很簡單,你自己創(chuàng)建一個。

魔法數(shù)字
看著這幅圖,我不禁要問。如果我們改變其中一個數(shù)字會發(fā)生什么?可能沒有什么好事。

至少它被分成了幾條線
從這塊代碼的純粹外觀來看,我猜測它是一個學(xué)校項目。不用說,我對這位老師表示慰問。

魔鬼也是一種功能
今天,我們將看到isEven函數(shù)的各種實現(xiàn)。這是我們的第一個候選人。我想說的是,我們已經(jīng)有了一個好的開始。你覺得怎么樣?

希望有一個函數(shù)來獲取字符串的大小
這個想法在我們的開發(fā)者伙伴的腦海中閃過。他沒有猶豫一秒鐘。并立即實施了它。

喚醒內(nèi)在的孩子
雖然聽起來很瘋狂,但你可以使用表情符號作為變量名稱。但你應(yīng)該以這種方式使用它們嗎?請看下面的代碼,自己決定。

到底誰在讀提交t信息
如果你有一個同事反復(fù)使用相同的提交信息。她可能是這樣做的。

如果這些變化中的任何一個
未來是不可預(yù)測的。它可以在一夜之間改變。為了防止這種情況發(fā)生,最好還是多加小心。

購買超寬屏顯示器的理由
冗長的變量名并無不妥。只要它們有助于提高代碼的可讀性。但有時,我們必須問自己 "多長才算長?”

天才之舉
這里沒有什么要補充的。我認為這條注釋不言自明。

排版是最好的
類型安全的感覺是很好的。那么如何更好地確保你不會出現(xiàn)任何類型錯誤呢?這些家伙,他們想出了這個辦法。

如果它起作用,它就是起作用
真正要說的是什么。只要確保參數(shù)的總和始終是7。而且這個函數(shù)不會失敗。
微信搜索公眾號:Java項目精選,回復(fù):java 領(lǐng)取資料 。

確保它是真正的Bool
多大程度的悲觀才算過分悲觀?我想說這個人真的很接近。

測試驅(qū)動的最佳開發(fā)方式
我們必須為使用單元測試的做法點贊。但我不禁要問。如果測試是生成隨機數(shù)字,會發(fā)生什么?

你敢于擴展嗎?
我們都在某些時候?qū)戇^復(fù)雜的開關(guān)語句。然而,一千行似乎有點太多了。但畢竟有很多鼠標(biāo)的狀態(tài)需要覆蓋。

試用Switch語句
你認為未來的計劃是要擴大這個Switch嗎?沒有什么了,只是要相信它。

數(shù)學(xué)是困難的
有時,使用外部幫助并不可恥。實際上存在的是--甚至是包。你敢猜它每周有多少次下載嗎?它超過了15萬次。

當(dāng)輝煌的想法流淌時
有時,你只是覺得自己是個叛逆者。你必須按自己的方式做事。但我想我們可以同意,這種類型的代碼不應(yīng)該進入代碼審查。

當(dāng)你是個碼農(nóng)但你的激情是書法時
我嘗試了不同類型的字體。但我不得不說,它從未走到這一步。如果這讓你懷疑 "盜版軟件是這樣寫的嗎?" 你并不孤單。

最后的思考
我希望你在看這些例子時有個好心情。我當(dāng)然也是如此。歡迎讓我知道你最喜歡的是哪一張。或者如果你有一些可恥的照片要分享,不要害怕在評論中分享它。
我在瀏覽這些代碼片斷時感到很愉快。它讓我想起了我早期的日子。在我的職業(yè)生涯中,我寫了一些我并不自豪的代碼片段。但幸運的是,沒有人對它們進行截圖。或者至少我希望如此。
?關(guān)注公眾號:Java后端編程,回復(fù)下面關(guān)鍵字?
要Java學(xué)習(xí)完整路線,回復(fù)??路線?
缺Java入門視頻,回復(fù):?視頻?
要Java面試經(jīng)驗,回復(fù)??面試?
缺Java項目,回復(fù):?項目?
進Java粉絲群:?加群?
PS:如果覺得我的分享不錯,歡迎大家隨手點贊、在看。
(完) 加我"微信"?獲取一份 最新Java面試題資料 請備注:666,不然不通過~
最近好文
1、Kafka 3.0重磅發(fā)布,棄用 Java 8 的支持!
最近面試BAT,整理一份面試資料《Java面試BAT通關(guān)手冊》,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。 獲取方式:關(guān)注公眾號并回復(fù)?java?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。 明天見(??ω??)?
