Divergent Change(发散式变化)---要重构的信号
生活随笔
收集整理的這篇文章主要介紹了
Divergent Change(发散式变化)---要重构的信号
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
“
當你看著一個類說,呃,如果新加入一個數據庫,我必須修改這三個函數;如果新出現一種金融工具,我必須修改這四個函數。那么,此時也許將這個類分成兩個會更好,這么一來每個對象就可以只因一種變化而需要修改。
”
上述特征的名稱叫做:Divergent Change。它表示,某個類經常因為不同的原因在不同的方向上發生變化。比如,上述的類,有兩個原因,會導致這個類在兩個不同的方向上發生變化。
我們認為,一個類,只會因為一種原因而導致變化,這才是好的。如果,這個類,會因為多種原因發生變化,那么,我們就要重構這個類。找出這個類中某種原因導致的所有變化,將這部分內容提煉到一個新的類中,使用Extract Class手法,然后,新的類將只會因為一種原因而導致變化。
比如,上述的類,會因為兩個不同的原因,在不同的方向上發生變化,那么,就可以提煉其中一種原因導致變化的相關代碼,作為新的類。比如,新加入一個數據庫,導致的變化,這部分代碼提煉到新類A中。這樣,新類只會因為數據庫的原因而發生變化。
例子:待定。
總結
以上是生活随笔為你收集整理的Divergent Change(发散式变化)---要重构的信号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux命令基础3
- 下一篇: SAP权限对象文集