成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

淺談重構(gòu)造成的災(zāi)難性毀滅

YancyYe / 3493人閱讀

摘要:本章我們來聊聊重構(gòu)造成的災(zāi)難性毀滅??吹竭@里即可明白重構(gòu)造成的災(zāi)難性毀滅是在年的時期發(fā)生的,那個階段在技術(shù)不夠扎實但還有一股子改變世界的勁頭發(fā)生的問題。

前言

這章我在7月20號的時候就準備好了標題,在那之前有寫過一篇重構(gòu)的文章,這段時間一直在等重構(gòu)造成的弊端。

慶幸的是至今也沒掛掉。本章我們來聊聊重構(gòu)造成的災(zāi)難性毀滅。

青銅

只要你確定你是一個真正的程序員,那當你接手一個新項目時,因為每個人的編碼規(guī)范與風格不同,或者某塊代碼出現(xiàn)了問題,作為一名向上的程序員,總會想去重構(gòu)這個項目更嚴重的都想重寫一遍。例如下面的這類代碼

$status = $_POST["status"]

switch status {
    case 
    ...
    break;
    case
    ...
    break;
    default:
    if(){
    ...
    }else if(){
    ...
    }else(){
    ...
    }
    break;
}

我知道當你看到這段代碼內(nèi)心是崩潰的,如果是名新人,在沒有完全理解其結(jié)構(gòu)作用的情況下,絕對不敢擅自動原有的代碼,除非他想加班,那怎么辦呢?只好在原有的代碼上繼續(xù)增加代碼了。

$status = $_POST["status"]

switch status {
    case 
    ...
    break;
    case
    ...
    break;
    default:
    if(){
    ...
    }else if(){
    ...
    }else if(){
    ...
    }else (){
     // 新人寫的
    }
    break;
}

這塊聊的新人入職,一般是不敢動原有代碼的。當然這不排除有膽量并且重構(gòu)的也不錯的新人。

白銀

上面聊的與重構(gòu)并無太大關(guān)系,但是必須存在的一段,用于表現(xiàn)程序員重構(gòu)道路上的勇氣。當你到白銀差不多需要1-2年的時間,具體時間要個人處在的環(huán)境和自學能力。新人不敢動是因為他對語言的基礎(chǔ)用法,類庫,設(shè)計模式都沒有特別了解,不敢擅自做動作也是比較聰明、保守的做法。

但到了白銀就不一樣了,我總結(jié)了程序員從入門到中級的心理變化,為什么只總結(jié)到中級?(PS:作者我自己都沒有到高級)這是一個從謙虛到高傲在到什么都不會的過程。

看到這里即可明白重構(gòu)造成的災(zāi)難性毀滅是在2-4年的時期發(fā)生的,那個階段在技術(shù)不夠扎實但還有一股子改變世界的勁頭發(fā)生的問題。

例如積分系統(tǒng)(這里指新接手的項目),領(lǐng)導(dǎo)讓你修改簽到獲得積分,如果在未全面了解代碼結(jié)構(gòu)與功能分布時,擅自修改那必然出現(xiàn)一場不可避免的災(zāi)難。一個簡單的簽到功能的模塊復(fù)雜度不亞于一個普普通通的企業(yè)站。大致有如下模塊組成

用戶模塊 -> 積分模塊 -> 交易模塊 -> 明細模塊 

為什么說是必然?除非你在原有基礎(chǔ)上改,那這樣你又變回了青銅并且也不想那么做。在基礎(chǔ)上重構(gòu)可能當時不會出現(xiàn)問題。不斷的有其他接手早晚回出問題。重構(gòu)的災(zāi)難并非指的是一個人或某個人造成的,就如一個水杯,每個人看到都倒入一滴水,當溢出來時就發(fā)生了所謂的“災(zāi)難”

黃金

到這個段位后,很多人都變得聰明了,不在基礎(chǔ)代碼上修改,更不去所謂的重寫。多帶帶拿出一個文件寫功能不就好了。事情還遠沒有那么簡單。

就如上圖那二貨,認為自己可以,但最終Over。在項目開發(fā)上我們見過很多類型的情況。重構(gòu)的方式方法有很多種,因人因物(項目)而異,對項目作出合理的分析后再對其作出一部分細節(jié)的重構(gòu),日月累計最終成形。

總結(jié)

如果你正在做重構(gòu)應(yīng)考慮以下幾點

成本

工期

代碼的優(yōu)雅與簡潔

可擴展性等等

為什么要重構(gòu)?原有代碼無法更好的擴展,代碼可讀性差無法在其基礎(chǔ)上修改的等等原因。希望會對你提供重構(gòu)質(zhì)量有一定幫助。

致謝

感謝你看到這篇文章,希望可以幫到你,謝謝。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/72200.html

相關(guān)文章

  • 淺談重構(gòu)造成災(zāi)難性毀滅

    摘要:本章我們來聊聊重構(gòu)造成的災(zāi)難性毀滅??吹竭@里即可明白重構(gòu)造成的災(zāi)難性毀滅是在年的時期發(fā)生的,那個階段在技術(shù)不夠扎實但還有一股子改變世界的勁頭發(fā)生的問題。 showImg(https://segmentfault.com/img/bVbjDK2?w=1734&h=682); 前言 這章我在7月20號的時候就準備好了標題,在那之前有寫過一篇重構(gòu)的文章,這段時間一直在等重構(gòu)造成的弊端。 慶幸...

    mrcode 評論0 收藏0
  • 云時代數(shù)據(jù)中心架構(gòu)與安全淺談

    摘要:考慮到云數(shù)據(jù)中心未來承載業(yè)務(wù)系統(tǒng)的多樣性和擴容空間,一般都會把架構(gòu)設(shè)計成公有云和私有云相混合的融合架構(gòu)。針對傳統(tǒng)災(zāi)備系統(tǒng)建設(shè)面臨的挑戰(zhàn),云數(shù)據(jù)中心更多傾向采用兩地三中心的解決方案。近年數(shù)據(jù)中心處于高速的建設(shè)發(fā)展時期,十三五規(guī)劃中也將大數(shù)據(jù)、云計算作為當前國家經(jīng)濟社會發(fā)展的重要戰(zhàn)略內(nèi)容,各政府部門對戰(zhàn)略性新興產(chǎn)業(yè)的大力扶持,以及對云計算、物聯(lián)網(wǎng)、寬帶和下一代網(wǎng)絡(luò)的發(fā)展的高度重視,都給建設(shè)數(shù)據(jù)中...

    yy736044583 評論0 收藏0
  • 淺談java classloader

    摘要:類加載器三杰有三類,分別是以及。線程上下文類加載器線程上下文類加載器可以不遵循雙親委派機制。免費領(lǐng)取驗證碼內(nèi)容安全短信發(fā)送直播點播體驗包及云服務(wù)器等套餐更多網(wǎng)易技術(shù)產(chǎn)品運營經(jīng)驗分享請訪問網(wǎng)易云社區(qū)。文章來源網(wǎng)易云社區(qū) 本文由作者張遠道授權(quán)網(wǎng)易云社區(qū)發(fā)布。 類加載器三杰 jvm有三類classloader,分別是bootstrap classloader,extended classlo...

    liuyix 評論0 收藏0
  • 容錯性好、易于管理和便于觀察:淺談如何利用K8s全面擁抱微服務(wù)架構(gòu)

    摘要:年月日,論壇首次來到中國,在上??鐕少彆怪行恼匍_并獲得了圓滿成功。擁抱微服務(wù)就成為大勢所趨。和大會日期會議日程通告日期年月日會議活動舉辦日期年月至日和贊助方案和多元化獎學金現(xiàn)正接受申請和即將首次合體落地中國和購票窗口,立即購票 KubeCon + CloudNativeCon 論壇,作為 CNCF 的旗艦會議,自2016年以來已經(jīng)在北美和歐洲兩地的舊金山、倫敦、硅丘(奧斯?。?、哥本...

    Ku_Andrew 評論0 收藏0
  • 淺談前后端分離與實踐(一)

    摘要:前后端的界限是按照瀏覽器和服務(wù)器的劃分。前后端彼此互不關(guān)聯(lián)。關(guān)于作者本文部分圖片段落參考文章實踐中的前后端分離。淘寶前后端分離實踐本文源碼詳見服務(wù)端代碼。 一、起源 (故事純屬虛構(gòu),如有雷同,純屬巧合)傳說在很久很久以前,我們有志之士有了個創(chuàng)業(yè)的想法,于是乎開始了自己的創(chuàng)業(yè)之夢,但是人手不足啊,于是乎所有角色老子一個人全包了: Roles: PM, DBA, RD, FED, Des...

    dantezhao 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<