|
Book this course for your company and elevate the effectiveness of your entire programming team. Contact Andy for availability. Design Patterns Course Code: IM500-020
|
“State Pattern” can get rid of lots of if/else spaghetti code. | |
“Strategy Pattern” can make your application more pluggable. | |
“Adapter” is one of the most important fundamental patterns. | |
“Mediator Pattern” can reduce coupling between classes and reduce complexity. | |
Understanding the “Template Method Pattern” requires that you know your object oriented principles and can make your code base more organized. | |
“Bridge Pattern” is a little complex but once you have invested in it, allows you to switch implementations with a single switch. | |
The factory patterns (“Factory Method” and “Abstract Factory”) are core patterns. |
Many more patterns like this are presented during this course.
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 look at diagramming techniques for showing overlapping patterns in UML diagrams.
Design Pattern Software - A presentation of a couple of UML design patterns tools for windows including Sparx Enterprise Architect and IBM Rationale Rose.
Discussion - Current research directions and the future of patterns (both theoretical and tools). Classic and cutting edge books and ideas are discussed (time permitting).
After completing this course, students will know how to:
· Describe the history of patterns development.
· Appreciate the benefits of a patterns approach to programming design.
· Describe the detailed design, purpose and behaviour of 20 of the original GOF design patterns.
· Communicate with other developers using the language of patterns.
· Use design patterns to improve the design of new and existing software.
· Implement various patterns in various programming languages.
· Combine different patterns so that they work together in a software design
· Understand some of the design patterns contained in such frameworks as.NET and Java
· Choose from a variety of UML tools which automate the application of patterns
Attendees should have:
· An Understanding of object oriented programming techniques
· Experience with an object-oriented programming language such as Java or C#
· Some exposure to UML diagramming models.
The 2 day course can only cover 2/3rds of the total material in this sheet. As such only approximately 12 patterns can be covered, and some topics like architectural patterns, uml automation tools etc cannot be covered. However attendees can to some extent customize the course content within the time constraints. The 3rd day of the course can be delivered at a later stage as a one day “top up” course.
Introduction to Patterns What are Patterns? Pattern Purposes The GOF patterns Pattern classifications The Use of UML Relationships between patterns When to use patterns & when not to |
Patterns: General Issues Reading a pattern Intent, applicability, forces of patterns Solutions & Consequences Implementation issues - language specific Anti-patterns Re-factoring of patterns
|
||
Creational Patterns Abstract Factory Builder Factory Method Prototype Singleton
|
Structural Patterns Adapter Bridge Composite Decorator Facade Flyweight Proxy Null Object
|
Behavioral Patterns Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Method Visitor |
|
Architectural Patterns Layers Blackboard Reactor Model-View-Controller |
Patterns in Frameworks Java .NET
|
Advanced Blending Patterns Automating patterns - tools The future of patterns
|
|
About the Trainer: |
Andy Bulka is Technical Director and Chief Software Architect at Austhink Software www.austhink.com. 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 – see www.atug.com/andypatterns.
Contact:
Andy Bulka
Design Patterns Training
WindowWare Multimedia
ABN 75 565 207 060
12 Melview Drive
Wyndham Vale VIC 3024
abulka@netspace.net.au
Phone: 0412 759 186