Skip to content

Design Patterns (1 day)

Our Design Patterns workshop is presented by Andy Bulka, Technical Director and Chief Software Architect at Austhink Software. He has been programming for over 25 years, and has applied design patterns to numerous real world applications including windows desktop applications, web sites and even a commercial computer game.

Andy has been teaching design patterns for four years, running three day workshops covering all the GOF patterns. He is an active member of Melbourne Patterns User Group giving regular presentations and talks. Andy was Local Conference Chair at the Australian Koala Plop Patterns Conference 2002, and is author of several papers on Design Patterns and Software development.

This one day course covers these topics:

A brief history of design patterns

The patterns movement, how the GOF book was created, why a knowledge of design patterns is crucial to today’s software developers. Where did patterns come from, what is the role of Christopher Alexander? Who are the key patterns people around the world? How has Australia been involved in the world patterns conference scene?

Detailed presentations of eight design patterns

State, strategy, adapter, mediator, template method, bridge, factory + your choice (by vote!).

  • State can get rid of lots of if/else spaghetti code;
  • Strategy can make your application more pluggable;
  • Adapter is one of the most important application assembly patterns;
  • Mediator can reduce coupling between classes and reduce complexity;
  • Template method pattern helps structure your code base, provided you know your object oriented principles;
  • Bridge pattern is complex, but once understood allows you to switch implementations with a single switch.
  • Factory patterns (factory method and abstract factory) are fundamental object creation patterns.
  • The last pattern to be presented is up to you!

How patterns are used together

Most people are surprised when shown how patterns can be combined. We will look at the notion of roles in classes and methods and look at diagramming techniques for showing overlapping patterns in UML diagrams.

Design Pattern Software

A presentation of serveral of UML design patterns tools for Windows including Sparx Enterprise Architect and IBM Rationale Rose.

Current research directions and the future of patterns

(both theoretical and tools). Classic and cutting edge books and ideas.