如果某個繼承體系承擔了兩個職責,那麼分解這個繼承體系
// 重構前
class 洗衣機
class 海爾洗衣機: 洗衣機
class 格力洗衣機: 洗衣機
// 重構後
class 脫水機
class 洗衣機
設定洗衣時間();
洗衣();
}class 海爾洗衣機: 洗衣機
class 格力洗衣機: 洗衣機
意思是將乙個過程化的**改為乙個對物件的呼叫過程,如下步驟:
將資料變為物件的資料,分解對資料操作的行為,並將這些行為移到物件中
你有某個類做了太多工作,那就試著去分解這個類,一般採用繼承體系
機房重構 泛型
1 datatable 是乙個臨時儲存資料的網格虛擬表 表示記憶體中資料的乙個表。datatable是ado dot net 庫中的核心物件。它可以被應用在 vb 和 asp 上。它無須 就可以簡單的繫結資料庫。它具有微軟風格的使用者介面。應用 執行查詢的操作,無參 需要執行語句,一般是sql語句,...
python學習心得(1) 大型檔案的讀取
我在部落格上發表一些我的python學習心得,希望對大家能有幫助。這一篇我們講述大型檔案python如何去讀取。當我們使用open函式取得乙個檔案物件之後,對這個檔案的所有操作都是通過這個控制代碼來實現的。讀取檔案的操作有三個 read 直接去讀位元組到字串中,可以指定size來讀取 readlin...
MSP430 大型陣列 上電不啟動
現象 程式燒錄板子後,微控制器不啟動,卡死。注釋掉部分位元組陣列後,才能執行。分析 這是iar編譯的方法,導致看門狗溢位了。msp430微控制器一上電看門狗就已經啟動,但是在進入main 函式之前,軟體會先初始化用到的一些資料,比如陣列。如果數定義的比較大,初始化時間比較長,那就有可能導致看門狗溢位...