OOD 五大原則 (5 principles)
Name: The Single Responsibility Principle
Desc: A class should have one, and only one, reason to change.
Name: The Open Closed Principle
Desc: You should be able to extend a classes behavior, without modifying it.
Name: The Liskov Substitution Principle
Desc: Derived classes must be substitutable for their base classes.
Name: The Dependency Inversion Principle
Desc: Depend on abstractions, not on concretions.
Name: The Interface Segregation Principle
Desc: Make fine grained interfaces that are client specific.