重構1 梳理並分解混亂的繼承體系

2021-06-04 11:13:50 字數 319 閱讀 8550

1.混亂的繼承體系是個嚴重的問題,因為它會導致重複的**,而後者正是程式設計師生涯中的致命毒藥。

2.這不是比我原先的classes數量還多嗎?難道它還能讓我的生活更舒服?生活中往往如此,以退為進,走得更遠。對乙個糾結成團的繼承體系來說,被提煉出來的另乙個繼承體系幾乎總是可以戲劇性地大量簡化。

函式的重要性並不和它的大小成正比例——在繼承體系中更是。

3.要指出「某個繼承體系承擔了兩項不同的責任」並不困難:如果繼承體系中的某一特定層次上的所有classes,其subclass名稱都以相同的形容詞開始,那麼這個繼承體系就很可能承擔了兩項不同的責任。

梳理並分解繼承體系

1.某個繼承體系同時承擔兩項責任 建立兩個繼承體系,並通過委託關係讓其中乙個可以呼叫另乙個。2.動機 混亂的繼承體系是乙個嚴重的問題,因為它會導致重複 還會是修改 變得困難,因為特定問題的解決策略被分散到了整個體系。3.做法 a.首先識別出繼承體系所承擔的不同責任,然後建立乙個二維 並以座標軸標出不...

重構筆記1

1 好 的兩個重要標誌 易讀 易改。2 重構的定義 在不改變 的外在行為的前提下,對 做出修改,以改進程式的內部結構。3 當你發現自己需要為乙個程式新增乙個特性,而 的結構使得你不能很方便的這麼做,那麼先重構那個程式,使得特性的新增比較容易進行,然後再新增特性。4 設計不良的程式,往往需要更多的 因...

OpenCV中使用SVD分解與重構

原文 opencv中svd分解函式compute c static void svd compute inputarray src,outputarray w,outputarray u,outputarray vt,int flags 0 src decomposed matrix w compu...