K8s? 的 pv_controller.go 源碼大約 1700 行(含注釋)科技行業(yè)網(wǎng)站建設(shè),其中包括:230+ 個 if 語句、30 個 else 語句、5 個 else if 語句嵌套在一起。
乍一看,這代碼違背了 KISS (Keep it simple, stupid)原則。
但是,K8s 的工程師們在注釋中用大寫英文標(biāo)注:“請不要嘗試簡化這些代碼!”并且還寫了兩遍。
為啥強調(diào)兩遍?K8s 他們在注釋中特意解釋了。大意如下:
這個控制器故意以一種非常冗長的風(fēng)格編寫。你會發(fā)現(xiàn):
1、每個 if 語句都有一個匹配的 else 語句(檢查客戶端 API 調(diào)用的簡單錯誤除外);
2、有很多被顯式地注釋的東西;
我們把這種風(fēng)格叫做“航天飛機風(fēng)格”。航天飛機的風(fēng)格意味著,要確保每個分支和條件都得到考慮和說明。NASA 為航天飛機等應(yīng)用程序編寫的代碼也是如此。
初,這個控制器的工作被分成三個控制器??刂破魇桥喕?PV 子系統(tǒng)的成果。在此過程中,我們要確保在代碼中處理和解釋了每一個條件,即使這會導(dǎo)致無 op 代碼分支。
因此,控制器代碼可能看起來過于冗長、注釋過多和“分支”。但是,這里記錄了大量的業(yè)務(wù)知識和上下文,以便確保未來的維護(hù)者能夠正確地推斷綁定行為的復(fù)雜性。因此巧用重復(fù)設(shè)計LOGO,對這個文件的修改,應(yīng)該保留并增加航天飛機的風(fēng)格。
請立即點擊咨詢我們或撥打咨詢熱線:13383168502,我們會詳細(xì)為你一一解答你心中的疑難。項目經(jīng)理在線