tft每日頭條

 > 科技

 > 程序員學習進步之重構代碼

程序員學習進步之重構代碼

科技 更新时间:2024-07-21 07:17:32

當了很多年的程序員了,不要告訴我沒有重構過自己寫的代碼,什麼?重構代碼是什麼意思?那下面我們來說說重構代碼。

程序員學習進步之重構代碼(程序員學習進步之重構代碼)1

重構是在不改變軟件可觀察行為的前提下改善内部結構。簡單的說就是你寫的代碼,在返回來重看的時候,發現寫的很爛,并且不能支持現有功能,所以必須在不改變現有功能的基礎上面來重寫。

重構前也要必須準備一下:

  • 重構前,先檢查自己是否有一套可靠的測試機制。這些測試必須有自我檢驗能力。

  • 重構技術就是以微小的步伐修改程序。如果你犯下錯誤,很容易便可發現它。

  • 任何一個傻瓜都能寫出計算機可以理解的代碼。唯有寫出人類容易理解的代碼,才是優秀的程序員。(變量命名)

  • 重構:對軟件内部結構的一種調整,目的是在不改變軟件可觀察行為的前提下,提高其可理解性,降低其修改成本。

  • 重構:使用一系列重構方法,在不改變軟件可觀察可觀察行為的前提下,調整其結構。

什麼樣的代碼要重構:

  • Duplicated Code 重複代碼

  • Long Method 過長函數

  • Large Class 過大的類

  • Long Parameter List 過長參數列

  • Divergent Change 發散式變化 – 軟件能夠更容易被修改

  • Shotgun Surgery 霰彈式修改 – 在很多類中做出許多小的修改

  • Feature Envy 依戀情結 – 函數對某個類的興趣高過對自己所處類的興趣

  • Data Clumps 數據泥團 – 很多相同的參數(可以新建一個類來保存)

  • Primitive Obsession 基本類型偏執

  • Switch Statements switch 驚悚現身

  • Parallel Inheritance Hierarchies 平行繼承體系

  • Lazy Class 冗贅類

  • Speculative Generality 誇誇其談未來性

  • Temporary Field 令人迷惑的暫時字段

  • Message Chains 過度耦合的消息鍊

  • Middle Man 中間人

  • Inappropriate Intimacy 狎昵關系

  • Alternative Classes with Different Interfaces 異曲同工的類

  • Incomplete Library Class 不完美的類庫

  • Data Class 純稚的數據類

  • Refused Bequest 被拒絕的遺贈

  • Comments 過多的注釋

總之多重構自己的代碼,就可以讓自己代碼寫的更漂亮,讓自己的技術水平和寫程序的思維角度更上一層樓。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved