java

Design Patterns versus Design Principles

Filed in archive Programming on November 7, 2005

BlogPicture
Tinou Bao and I met while working on a project a few years back. During that time I found him to be one of the best developers I had, and still have, ever met. Anyway, Tinou has an interesting post on his weblog titled Design Patterns versus Design Principles and I thought I'd cover it here.

In the article he is frustrated at the lack of real understanding job candidates have about Design Principles even though they state on resumes that they have experience using Design Patterns. Tinou writes:

Most are able to give me some examples - singleton, factory, etc. - but ideally I would like them to go beyond citing actual design patterns and actually discuss the rationale behind the patterns. In some ways design patterns mask critical thinking. Software engineers know about them and know how to use them, but a good portion - dare I say the majority - don't understand their evolution. In other words, they can answer, give me some examples of design patterns, but are stumped when asked what are some principles of good object-oriented design.

This is what I'm looking for (courtesy cilu/codeguru.com)

Open Close Principle (OCP)
Liskov Substitution Principle (LSP)
Design by Contract
Dependency Inversion Principle (DIP)
Law of Demeter (LoD)
Interface Segrgation Principle (ISP)
Reuse/Release Equivalency Principle (REP)
The Common Reuse Principle (CRP)
Common Closure Principle (CCP)
Acyclic Dependencies Principles (ADP)
Stable Dependencies Principle (SDP)
Stable abstractions Principle (SAP)
The folks over at Object Mentor Inc. have provide a pretty good paper on this subject that is easy to read. I say that because the Geek Factor is hitting the top of the scale with this subject. Kidding aside, it is a good idea for developers to know these things because in many cases they are probably following the principles but haven't been given a formal introduction to them.



Permalink: Design Patterns versus Design Principles

Tags: desgin  patterns 

Vote for Design Patterns versus Design Principles:

  • Currently 6.00/10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Rating: 6.00 out of 2 vote(s) cast.
 
Share It
RSSrss
Google google
Yahoo! yahoo
Addthis Subscribe using any feed reader!
Bloglines Bloglines
TwitterFollow us on Twitter!
Most Popular   AJAX   Application Development   Awards   Basics   Best of   Business   conference   Did you know   E-Commerce   Information About   Management   Misc   Mobile Devices   mobile phones   Monthly Contest   Personal   Programming   Quick introduction   Security   Service Oriented Architectures