Andy's Published Patterns
These three patterns are substantial works which have been presented at KoalaPlop (Asian Pacific Conference on Pattern Languages of Programs) in both 2000 and 2001. My shepherds were Jim Coplien (MGM pattern), Ali Arsanjani (TI pattern) and James Noble (RM pattern). These final versions incorporate comments and reviews from the attendees of KoalaPlop 2000 and 2001.
Here are the patterns in pdf format, which looks more professional than the html pages offered here.
Design Pattern Automation.pdf
(not available in HTML format yet)
Design Pattern Courses - for your company
Andy can deliver a design patterns course to you programming team on your company's premises. Check out the details here.
Latest download - Relationship Manager for .NET
Andy's Latest Patterns Talk
"The road to Bridge" - presented at the Melbourne Patterns Group, 23 March 2005.
A story of how we get from patterns like the Interface pattern to Factory, Strategy, Proxy, Adapter, and finally to Bridge. Its all about being able to swap implementations.
The Patterns Movement
I'm a big fan of patterns and UML diagrams. Capturing hard-won software design experience in the form of design patterns and architecture patterns is a noble cause that everyone can contribute to. You can contribute by writing patterns and coming to the Plop patterns conferences.
I believe the most urgent work is now to find and document all the patterns in an existing, substantial and mature class library / langauge IDE framework. The Java, Python and Delphi class libraries are all worthy candidates. Because the class libraries we are starting with are already relatively complete, I contend that any resulting collection of patterns would therefore form a complete pattern language - a rare (some say impossible) thing in the patterns world.
I know, I know, patterns are for the designer's brain, being more abstract than any particular implementation that an IDE software may provide. Nevertheless, why not automate particluar implementations of patterns - why not?
The above animated GIF is from ModelMaker, a Delphi UML modelling tool that has automated patterns to a degree I don't think anyone else has achieved. Modelmaker actively maintains patterns - so that when classes change, the pattern adapts by renaming or adding methods etc.. Very cool. You can delete patterns from your UML model and they clean up after themselves.
TogetherJ has similar technology. For example you can drag a line from one class to another, and this invokes a wizard which asks what sort of vector or list class to use to implement this association - then generates the code for you.
I look forward to the day when patterns templates and refactoring editors are built into all IDE's.
Then of course I want to plug the patterns together like LEGO blocks... When will this dream come true? Perhaps LEGO is not the best metaphor. Multidimensional aspect oriented, role based LEGO?
Design Pattern Automation.pdf (not available in HTML format yet)
Revised: 26 Jan 2009 00:14:36 -0600.