Object Oriented Patterns

While I have been programming now for about 3 years using the Object Oriented programming environment of C# I have not really spent any time looking at patterns. I am guessing in my natural progression of learning programming this seems to be the next logical step.

I am on vacation currently and this gave me the perfect opportunity to spend some time reading which I don't usually do much of. In fact I can say that I have never read a technical publication fully. Well as of today that is no longer the case. I read "Design Patterns Explained" by Alan Shallow and James Trott entirely. I have to say that this is the very first publication I have read that explained things the way I learn. In fact the author explains the same process he went through in understanding patterns and his natural progression in learning software. I highly recommend this book if you are just learning OO Design patterns.

Next I went and did some searches on the Design patterns that I had been reading about but related to my programming language and came across a great page on codeproject that shows an entire program and how each aspect relates to various patterns.

 

Design Patterns Implementation in a Storage Explorer Application

By Breman Sinaga

URL: http://www.codeproject.com/KB/architecture/sinagastorageexplorer.aspx

Breman does an incredible job of showing how some of the software patterns might be implemented in a real world application and really this is bringing together a much better understanding of how to apply some of these patterns. I am starting to think about how I am possibly already using some of these patterns without knowing it before and how some of the things solved in our applications might have been better structured had we implemented some of the various patterns.

I read some more today and found a link to a page that gives an outline at how to study patterns and information on creating a study group. I think it might be cool to see if Seattle has a local study group related to patterns so putting this as a reminder.

http://www.industriallogic.com/papers/learning.html

http://www.bennorthrop.com/Home/Blog/2006_11_01_design_patterns.php

http://www.onjava.com/pub/a/onjava/2005/04/06/designpatterns.html

Good reference resource Wikipedia: http://en.wikipedia.org/wiki/Design_Patterns