顯示具有 重構 標籤的文章。 顯示所有文章
顯示具有 重構 標籤的文章。 顯示所有文章

重構CH1//重構第二步

沒有留言:

提煉「常客積點計算」程式碼

承第一步的最後一段程式
在statement()裡面的這一段
這一段積點計算程式,應該放在Rental class身上,運用Extract Method

重構CH1//重構第一步

沒有留言:

第一步:

找出程式碼的「邏輯泥團」(logical clump),運用Extract Method
本例中的logical clump就是switch(),將它拉出來成為一個獨立的method

安全做法參考書後的refactoring catalog(重構名錄)

1. 找出函式內的區域變數和參數

    找到兩個: each, thisAmount(前者不會被修改,後者會被修改)
    不會被修改的變數,都可以被傳入新的函式
    會被修改的變數,就要格外小心
        只有一個變數修改,就把它當作是返回值

重構CH1//未重構原始碼

沒有留言:
重構是什麼?
《重構》的第一章表演了一段「什麼是重構?」
在這,把程式碼弄成C++,同義的表演一次。

程式規格:

  • 影片出租店用的程式
    計算每一位顧客的消費金額並列印報表(statment)
  • 操作者告訴程式    顧客租了哪些影片?
        租期多長?
    程式便計算出費用
  • 影片分為三類普通片、兒童片、新片
  • 除了計算費用,還要為常客計算點數依照「是否為新片」而所有不同

原本的程式碼