SOLIDS — Single ResponsibilityO — Open/ClosedL — Liskov SubstitutionI — Interface SegregationD — Dependency Inversion