設計模式-SOLID (物件導向設計)
在程式設計領域, SOLID(單一功能、開閉原則、里氏替換、介面隔離以及依賴反轉)是由羅伯特·C·馬丁在21世紀早期引入的記憶術首字母縮略字,指代了物件導向程式設計和物件導向設計的五個基本原則。當這些原則被一起應用時,它們使得一個程式設計師開發一個容易進行軟體維護和擴充的系統變得更加可能。[1] SOLID所包含的原則是通過引發程式設計者進行軟體原始碼的代碼重構進行軟體的代碼異味清掃,從而使得軟體清晰可讀以及可延伸時可以應用的指南。SOLID被典型的應用在測試驅動開發上,並且是敏捷開發以及自適應軟體開發的基本原則的重要組成部分。
S 單一功能原則 認為「物件應該僅具有一種單一功能」的概念。
O 開閉原則 認為「軟體應該是對於擴充開放的,但是對於修改封閉的」的概念。
L 里氏替換原則 認為「程式中的物件應該是可以在不改變程式正確性的前提下被它的子類所替換的」的概念。參考契約式設計。
I 介面隔離原則 認為「多個特定客戶端介面要好於一個寬泛用途的介面」的概念。
D 依賴反轉原則 認為一個方法應該遵從「依賴於抽象而不是一個實例」的概念。依賴注入是該原則的一種實現方式。
學習SOLID設計原則的好處:
- 降低程式碼複雜度
- 具有較佳的程式碼可讀性
- 提升模組可重複利用性
- 讓模組具有高內聚力,低耦合力
- 當面臨需求變更時,可減少破壞現有模組的風險
參考資料:
https://zh.wikipedia.org/wiki/SOLID_(%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E8%AE%BE%E8%AE%A1)
https://dannyliu.me/solid%E8%A8%AD%E8%A8%88%E5%8E%9F%E5%89%87%E7%AD%86%E8%A8%98/
留言
張貼留言