推 typepeter:如果只是二個,就沒差 問題是重複的Bug,就很慘 07/25 23:56
→ yauhh:怎麼會沒差呢? 你可要在50~60個classes中,認得有2個共用func 07/26 00:00
→ typepeter:完全一樣的動作建議還是抽出,copy/paste除錯會更慘 07/26 00:00
→ yauhh:光是要花費在記憶這種特例的精神,就讓人怨恨死你了. 07/26 00:01
→ typepeter:今天若是二個function,不抽共同邏輯沒關係 多個,很慘 07/26 00:01
→ typepeter:如果paste全部都是copy/paste的動作,將有大量時間浪費 07/26 00:02
→ yauhh:除非你具有獨立性質的邏輯抽出來做個單元,是有用的. 07/26 00:02
→ typepeter:所以我提到的是: 是可以獨立的邏輯,抽出共同邏輯 07/26 00:03
→ yauhh:或者趁幾次修改時,將新加的碼放在獨立的單元中. 07/26 00:04
→ typepeter:不然一樣的邏輯問題 又要去改數個拷貝貼上的重複 很慘 07/26 00:04
→ yauhh:但是,應該要搞清楚這是在工作. 重構是為了工作,還是為了高興 07/26 00:05
→ typepeter:工作效率其實可以從減少浪費時間作起 07/26 00:05
→ typepeter:如果一樣是作事情,建議可以減少機械動作 07/26 00:06
→ yauhh:那你最好算一算,到底減少浪費了多久時間. 07/26 00:06
→ typepeter:如果你漏了改某個地方呢? 那之後還要debug 07/26 00:07
→ typepeter:這是bad smell之中最為人知的其中一個: duplicated code 07/26 00:07
→ typepeter:算上機械動作,加上檢查是否漏改,以及漏改的debug時間 07/26 00:11
→ typepeter:應該減少duplicated code會比較節省時間 07/26 00:11
→ typepeter:此外,若沒有抽共同邏輯 同一個邏輯將會發展無數版本 07/26 00:16
→ typepeter:之後光是閱讀及維護 可能要找出原本的同樣debug,就累死 07/26 00:16