《代碼整潔之道》讀書筆記

第三章 函數

  1. 函數只作一件事;每一個函數一個抽象層級
  2. switch語句替換成工廠模式
  3. 使用異常代替返回錯誤碼;吧try/catch單獨放在一個函數裏

調用者儘量放在被調用者上邊java

第六章 對象和數據結構

對象:對象把數據隱藏在抽象以後
數據結構:暴露其數據數據結構

  • 過程式:
class Square{
}
class Rectangle{
}
class Gemetry {
	public area(Object shape) {
	if (shape instanceof Square) {
	} else if (shape instanceof Rectangle) {
	}
	}
}

添加新類:必須修改Gemetry全部函數函數

  • 多態式:
class Square implements Shape {
public area();
}
class Rectangle implements Shape {
public area();
}

添加新函數:全部類都必須修改單元測試

第七章 錯誤處理

設計打包類,封裝第三方庫,否則一堆catch很煩
別返回null
別傳null測試

第九章 單元測試

構造-操做-檢驗(build-operate-check)ui

第十章 類

單一職責原則(SRP) 類或抽象應該只有一個被修改的理由 開放閉合原則(OCP) 類應當對擴展開放,對修改封閉 依賴倒置原則(DIP) 類應當依賴於抽象而不是具體細節設計

第十一章 系統

將構造和使用分開
工廠模式
依賴注入DI
控制反轉IOC
對象不該該負責實例化,應當把這一權責給其餘‘有權力’的機制,從而實現控制反轉
參考: IoC/DIP實際上是一種管理思想 java代理 --- 代碼量大,實現複雜
AOP
POJO(Plain Old Java Object)
DAO 數據存取器對象代理

第十四章 逐步改進

  1. TDD,寫單元測試
  2. 先在大類中添加子類,小步快跑

總結

  1. 經過全部測試
  2. DRY don't repeat yourself
  3. 像文章同樣,從上之下寫代碼
相關文章
相關標籤/搜索