<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          為什么祖?zhèn)鞔a會(huì)被稱為屎山?

          共 2254字,需瀏覽 5分鐘

           ·

          2020-12-30 19:54

          原文地址:https://juejin.cn/post/6896312475390574599

          在掘金看到一篇標(biāo)題為“為什么祖?zhèn)鞔a會(huì)被稱為屎山?”的文章,我覺(jué)得寫的非常形象!很有意思 ?所以,在這里分享一下。這篇文章的作者為賽博鐵犁 ,目前在傳易支付做產(chǎn)品總監(jiān)。


          有一天,有幾條蟲(chóng)子,干擾了老板賺錢,老板希望你能抓住它們。

          你帶著年輕的銳氣,青春的活力,學(xué)藝多年積累的程序設(shè)計(jì)藝術(shù),打開(kāi)了公司的代碼倉(cāng)庫(kù)。

          遠(yuǎn)看,似乎一個(gè)運(yùn)轉(zhuǎn)的機(jī)器,巨大的代碼堆積在一起形成了大致的輪廓,蠕動(dòng)著前進(jìn)。

          湊近了一看,在不凈的框架中,亂碼般的語(yǔ)句在運(yùn)轉(zhuǎn),像生了麻風(fēng)病的蛞蝓一樣在噴吐,粘稠的水在流動(dòng),而穿著格子衫的人群則在焰柱旁圍成了一個(gè)半圓,這就是碼農(nóng)的儀式。他們環(huán)繞著那不可名狀植物,不斷的伸手進(jìn)去撥弄,又不斷的掏出一些東西填上去,使他堆積的更高,為了防止到他,又掏出黏糊糊的糊糊,用力的涂抹,試圖把它們黏在一起。

          這是一個(gè)前人留下的屎堆起來(lái)的一個(gè)克蘇魯縫合怪,看起來(lái)?yè)u搖欲墜,有無(wú)數(shù)的蟲(chóng)子爬來(lái)爬去。但勉強(qiáng)堆起了山一樣的形體,蠕動(dòng)著為老板賺錢。

          你滿心熱血,要對(duì)這座山進(jìn)行清理,使它成為一個(gè)魯棒的鋼鐵巨獸,可以隨時(shí)更換最新的部件,奔騰如飛,堅(jiān)固異常,帶著兄弟們走向人生巔峰。

          你經(jīng)過(guò)縝密的分析,順著蟲(chóng)子留下的痕跡,終于找到了問(wèn)題的源頭,發(fā)現(xiàn)一坨很多年前某碼農(nóng)因?yàn)闀r(shí)代局限或者水平有限拉的陳年舊屎,你覺(jué)得只要對(duì)它改良一下,梳理清楚結(jié)構(gòu),加強(qiáng)判斷與容錯(cuò),就可以變化成一個(gè)鋼鐵部件,讓這坨怪物離巨獸更近一步。

          你用力的挖掘其中的信息,卻發(fā)現(xiàn),事情沒(méi)有那么簡(jiǎn)單,這一坨實(shí)際上不是孤立的一坨,而是和整個(gè)山體融合在一起。或者說(shuō),這座山實(shí)際上是一坨坨粘稠滑膩的克蘇魯,通過(guò)無(wú)數(shù)的觸角和粘液連接在了一起,這些克蘇魯伸出無(wú)數(shù)的觸角,伸進(jìn)這座山體中未知的角落。

          有看起來(lái)結(jié)構(gòu)相同,但是出現(xiàn)了幾十上百次的重復(fù)邏輯。有無(wú)數(shù)道不知道伸向何處的判斷分支。有七零八落到處都是又無(wú)法解釋的神秘?cái)?shù)字。有從表面直接伸向最底層的神秘調(diào)用。還有猜不出,看不懂,無(wú)法預(yù)計(jì)什么時(shí)候會(huì)觸發(fā),什么時(shí)候會(huì)爆發(fā)的無(wú)數(shù)定時(shí)器。還有無(wú)數(shù)神秘的線程在獨(dú)立的掛在那里,猜不出哪個(gè)什么時(shí)候會(huì)忽然啟動(dòng),什么時(shí)候會(huì)忽然掛起,什么時(shí)候會(huì)忽然互相搶資源而死鎖,哪些資源會(huì)莫名其妙的被改動(dòng)。神秘的鏈接,神秘的任務(wù)隊(duì)列,神秘的池,神秘的環(huán)形緩存,神秘的堆棧。

          他們耦合在一起,互相支撐,構(gòu)成了一坨更大的克蘇魯屎怪,緩慢的蠕動(dòng)。

          你極其困難的清理和修改了其中的一點(diǎn)點(diǎn)內(nèi)容,讓這一點(diǎn)點(diǎn)的內(nèi)容脫離出耦合態(tài),看起來(lái)清晰一點(diǎn)。結(jié)果,忽然屎山對(duì)面十萬(wàn)八千行外,你永遠(yuǎn)意想不到的一塊功能,忽然掛了。一個(gè)你完全在工作上沒(méi)接觸過(guò)的同事,通過(guò)他的盤查,發(fā)現(xiàn)是他維護(hù)的一個(gè)函數(shù)/方法、類、線程、內(nèi)存塊,池,和你改動(dòng)的部分是深度耦合的,你的解耦導(dǎo)致了難以理解的錯(cuò)誤使他們的部分產(chǎn)生了錯(cuò)誤。于是你被罵了,你只能再退一步,在一個(gè)更小的范圍內(nèi)進(jìn)行調(diào)整,但是發(fā)現(xiàn),蟲(chóng)子不止是由這一塊構(gòu)成的,于是你追蹤者蟲(chóng)子的足跡,去改良一個(gè)一個(gè)的模塊。

          在經(jīng)歷了一輪又一輪的批評(píng),幾乎結(jié)識(shí)了全公司所有模塊的負(fù)責(zé)人之后,你終于抓住了一條蟲(chóng)子。但是在這個(gè)漫長(zhǎng)的過(guò)程中,你早已忘卻初心。在無(wú)數(shù)次的趕工加班熬夜的迷糊中,被同事老板挨罵后的憤懣中,表白失敗/和女朋友吵架/發(fā)現(xiàn)自己頭頂有點(diǎn)綠的低落中;無(wú)數(shù)次當(dāng)做臨時(shí)代碼寫下,計(jì)劃單元測(cè)試完成后就重寫卻忘記的過(guò)程中,因?yàn)橥祽谢蛘卟簧岬么驍嗨悸范鴳械贸槌鲚喿佣a(chǎn)生的超大代碼塊中。

          留下了無(wú)數(shù)看起來(lái)結(jié)構(gòu)相同,但是出現(xiàn)了幾十上百次的重復(fù)邏輯。無(wú)數(shù)道不知道伸向何處的判斷分支。大量的無(wú)法解釋的神秘?cái)?shù)字。從表面直接伸向最底層的神秘調(diào)用。猜不出,看不懂,無(wú)法預(yù)計(jì)什么時(shí)候會(huì)觸發(fā),什么時(shí)候會(huì)爆發(fā)的無(wú)數(shù)定時(shí)器。無(wú)數(shù)猜不出哪個(gè)什么時(shí)候會(huì)忽然啟動(dòng),什么時(shí)候會(huì)忽然掛起,什么時(shí)候會(huì)忽然互相搶資源而死鎖,莫名其妙改動(dòng)資源的神秘線程。神秘的鏈接,神秘的任務(wù)隊(duì)列,神秘的池,神秘的環(huán)形緩存,神秘的堆棧。

          你要抓的哪條蟲(chóng)子確實(shí)抓出來(lái)了。然而,在你沒(méi)看到的地方,隨著運(yùn)轉(zhuǎn),更多的新的蟲(chóng)子正在茁壯的成長(zhǎng)。

          這時(shí),你突然發(fā)現(xiàn)你的腳抽不出來(lái)了,幾條觸手順著你的腿向上攀延,你的手被深深地吸入泥沼一樣的屎山,你使盡全力想要抽出胳膊,但越是掙扎,陷得越深,仿佛屎山中心有一個(gè)冰冷的黑洞,要將所有接近的物體吞噬殆盡。你的精氣在一點(diǎn)點(diǎn)流失,一種極度的疲憊,但是又釋然的感覺(jué)涌了上來(lái)。此刻,你覺(jué)得舒適又滿足,漸漸地閉上了雙眼,你甘愿奉獻(xiàn)頭發(fā)與生命,將自己化作一塊補(bǔ)丁,維系著系統(tǒng)的茍延殘喘。它再也沒(méi)法離開(kāi)你了,你和你的頭發(fā),成了它的一部分。

          不知道過(guò)了多久。終于又有一條蟲(chóng)子在運(yùn)行中暴露,干擾了老板賺錢。

          老板又安排了一個(gè)年輕人來(lái)抓住這條蟲(chóng)子。這個(gè)年輕人帶著銳氣,青春和活力來(lái)到這座山前。

          看到這搖搖欲墜的克蘇魯大山,不僅倒吸一口冷氣。

          “oh shit ! shit mountain !”

          推薦?:?Github掘金計(jì)劃:Github上的一些優(yōu)質(zhì)項(xiàng)目搜羅

          推薦?:?Github 2020 年度報(bào)告,值得一看 -「編程雜感」第 5 期

          我是Guide哥,Java后端開(kāi)發(fā),擁抱開(kāi)源,喜歡烹飪,自由的少年。一個(gè)三觀比主角還正的技術(shù)人。我們下期再見(jiàn)!

          瀏覽 51
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  91兑费福利网 | 波多野结衣AV免费观看 | 波多野结衣一区二区三区免费视频 | 欧美在线无码视频 | 自拍偷拍成人在线 |