SOLID
S:Single Responsibility Principle
「物件應該僅具有一種單一功能」
O:Open/closed principle
開閉原則
「軟體應當對於擴充是開放的,但對於修改是封閉的」
L:Liskov substitution principle
里氏替換原則
「應當可以在不改變程式正確性的前提下,替換物件與其子類」
I:Interface segregation principle
介面隔離原則
「不可強制客戶端依賴於不使用的方法」
D:Dependency inversion principle
依賴反轉原則
「上層的模組不可依賴下層的模組。每個模組都應該是『抽象』的」