Wednesday, April 14, 2010

Some Useful Design Principles

I am a big fan of design patterns and like these principles much, they can really help us decide better when facing design issues, even they can help in normal life when you don't program.

DRY : (Don't Repeat Yourself)
SOC : (Separation of Concerns)
KISS: (Keep it Simple and Stupid)
YAGNI : (You ain't gonna need it)
CQS : (Command-Query Separation)

SOLID Principles:
SRP:(single responsibility principle)
OCP:(Open Close Principle)
LSP: (Liskov substitution principle - Design By Contract)
ISP:(Interface-segregation principle)
DIP:(Dependency inversion principle)

Inheritance --> A is a kind of B
Composition --> A is a part of B
Aggregation --> A has a B



mark snow said...

Wow, its really nice principles. I look foreword this to my friends. Thanks for nice post.

iPad Application Development

Post a Comment