自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

從華為的遭遇看代碼重構(gòu)

企業(yè)動態(tài)
大家都知道,最近以美國為首的西方國家正在打壓華為,想把華為的5G排擠出西方市場,作為應(yīng)對措施,華為的高管尤其是任正非,密集地接受了國內(nèi)外媒體的采訪。

 大家都知道,最近以美國為首的西方國家正在打壓華為,想把華為的5G排擠出西方市場,作為應(yīng)對措施,華為的高管尤其是任正非,密集地接受了國內(nèi)外媒體的采訪。

今年1月3號, 網(wǎng)絡(luò)上還流出一封任正非致全體員工的信, 《全面提升軟件工程能力與實(shí)踐,打造可信的高質(zhì)量產(chǎn)品》, 初始投入是20億美元,這是相當(dāng)大的手筆。

我在知識星球做了一點(diǎn)解讀, 其中最感到疑惑的就是這封信的前面主要講了安全和隱私,達(dá)到可信的目標(biāo),讓客戶可以放心購買,放心使用華為的產(chǎn)品。

后面筆鋒一轉(zhuǎn),主要講要提高代碼質(zhì)量,和腐化的架構(gòu)/代碼做斗爭,這和安全和隱私扯不上關(guān)系啊。

這中間肯定少了點(diǎn)東西!

今天又看到了英國媒體對華為輪值董事長徐志軍的采訪,豁然開朗,原來華為最早跟英國政府合作成立HCSEC,華為的源代碼是要拿過去,讓具備權(quán)限的人進(jìn)行審查,以此證明沒有后門,客戶可以放心、安全地使用。

現(xiàn)在HCESC提出的問題居然是:華為的代碼不夠漂亮!

我大膽揣測一下,這句話的潛臺詞是:你們的代碼太多太爛了,我們都看不懂了,怎么能確定有沒有后門?

這些代碼是華為在通信行業(yè)三十年的時(shí)間積累起來的,像windows幾十年的積累一樣,可以想象,這里邊得有多少遺留代碼。

這要求我覺得確實(shí)挺過分的,一般來說,一個(gè)軟件對外的功能和性能能達(dá)到要求就可以了,客戶是不去管你內(nèi)部實(shí)現(xiàn)成什么樣子,現(xiàn)在人家不但要求功能實(shí)現(xiàn),還要求代碼漂亮、易讀、易修改。 不但要求結(jié)果是高質(zhì)量的,可信的,連過程也要是可信的。

華為最初的方案是先關(guān)注新增代碼,對新增代碼達(dá)到優(yōu)雅漂亮的要求,別動歷史代碼,這是很現(xiàn)實(shí)的策略,但人家不同意。

沒辦法,那就開始重構(gòu)吧, 投入20億美元,全面提升軟件工程能力與實(shí)踐,打造可信的高質(zhì)量產(chǎn)品。

要想去重構(gòu)這樣的代碼,談何容易!

首先得理解現(xiàn)有的業(yè)務(wù),因?yàn)檫z留代碼雖然爛,但是他能工作!看起來很簡單的bug fix是無數(shù)人熬夜的結(jié)晶,你去重構(gòu),能保證這些功能不變嗎? 能保證這些bug 不出現(xiàn)嗎? 如何用自動化的功能測試,單元測試去覆蓋這些代碼,讓大家去安全重構(gòu),真的需要勇氣和智慧。

華為這么做,是被形勢所迫,也是為未來著想,那其他公司呢?

我在IBM的時(shí)候也遇到過很多遺留代碼,尤其是那個(gè)長達(dá)幾千行的JSP, 充當(dāng)了MVC中的Controller角色。代碼中充斥這isOK, flag, success 這樣的控制變量,搞得程序員痛不欲生。

之前網(wǎng)上流傳這一個(gè)Oracle數(shù)據(jù)庫開發(fā)人員的日常,在Fix一個(gè)Bug的時(shí)候,需要先花兩周的時(shí)候去理解20個(gè)flag, 理清他們之前的關(guān)系, 然后再添加一個(gè)新的flag,提交到由100-200臺服務(wù)器的集群去測試20-30小時(shí),運(yùn)氣好的話有100個(gè)測試用例失敗,運(yùn)氣不好的話有1000個(gè)測試用例失敗......

還有很多人吐槽自己公司的爛代碼, 可見遺留代碼是一件非常普遍的事情,和公司的大小強(qiáng)弱沒有關(guān)系。

想想也正常,國內(nèi)互聯(lián)網(wǎng)行業(yè)競爭極為慘烈,工期這么緊,任務(wù)這么多,加班加點(diǎn)都干不完, 很多時(shí)候簡單、快速地完成工作是***要務(wù),根本顧不上優(yōu)美的設(shè)計(jì),漂亮的代碼。即使是曾經(jīng)擁有過的優(yōu)雅代碼, 也會被越來越多的垃圾代碼所覆蓋。

問題是這樣發(fā)展下去,早晚要出問題,什么時(shí)候去重構(gòu)代碼呢?

【本文為51CTO專欄作者“劉欣”的原創(chuàng)稿件,轉(zhuǎn)載請通過作者微信公眾號coderising獲取授權(quán)】

 

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2018-03-25 09:18:02

IT

2021-08-03 08:13:48

重構(gòu)API代碼

2019-11-26 10:50:47

代碼編程語言重構(gòu)

2014-12-01 11:15:40

2015-08-17 10:42:13

2014-01-02 10:50:03

華為2014新年致辭任正非

2024-09-05 10:17:34

2012-05-28 10:01:19

2012-07-27 10:30:12

重構(gòu)

2014-10-08 15:23:09

華為HCC華為云計(jì)算大會云計(jì)算

2017-09-28 10:49:24

數(shù)據(jù)中心網(wǎng)絡(luò)重構(gòu)

2019-10-08 09:29:41

架構(gòu)代碼業(yè)務(wù)邏輯

2018-08-22 16:43:20

華為

2018-12-20 13:02:02

2011-08-16 09:47:58

編程

2022-12-29 12:33:20

2017-01-13 15:25:33

2022-12-26 00:02:24

重構(gòu)代碼軟件

2019-04-03 08:10:17

代碼架構(gòu)信息

2024-02-22 10:27:00

Python開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號