Object-Oriented Design


SRP

Single Responsibility Principle

There should never be more than one reason for a class to change.

OCP

Open Closed Principle

Software entities (like classes, modules and functions) should be open for extension but closed for modifications.

LSP

Liskov Substitution Principle

Inheritance should ensure that any property proved about supertype objects also holds for subtype objects.

ISP

Interface Segregation Principle

Clients should not be forced to depend upon interfaces that they don't use.

DIP

Dependency Injection Principle

High-level modules should not depend on low-level modules. Both should depend on abstractions. Abstractions should not depend on details. Details should depend on abstractions.

Reference

http://rockssdlog.blogspot.tw/2012/03/oo-solid.html

results matching ""

    No results matching ""