Design Patterns


Okay so I am officially going to start working through each and every design pattern in the “Sun Certified Enterprise Architect for J2EE Technology” study guide. I keep going through the book from time to time and while it is fun reading UML, there is absolutely no replacement for code and your own experience.

List of design patterns I am going to work on
Design Patterns - Creational, Structural and Behavioral

I started with a top level “design.patterns” package which will have Creational, Structural and Behavioral patterns as a sub-package.  I thought about then writing the examples all under the pattern-type package (design.pattern.Creational) but realized that we may soon have a lot of files from different patterns and not know at-a-glance how many classes we may need per pattern, for example. So I decided to create another level which the Pattern Name so that we can build the Tester and pattern implementation classes under a proper subtree,  “design.pattern.Creational.AbstractFactory” for example.

I also hope to explore some of the anti-pattern implementations we have made and try to reason if that was a good choice then or good choice in hindsight : )

So until then … lets brush up our types (look at the image above – “Creational”, “Structural” and “Behavioral”)  and understand what they mean – i.e. ask your self what is the difference between Creational pattern and Structural pattern and when you would think-about one vs the other.   Good luck!

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s