Learn to apply design and architectural patterns and best practices in the context of real-world applications.
So you've learned the basics of Java. But can you create a
well-designed object-oriented application? One that minimizes complexity and maintenance costs, but also performs and scales well? That's the purpose of this 5 day, hands-on workshop. You'll learn the best practices of object oriented design and architecture through the practical application of
patterns.
Patterns are a great way to solidify your mastery of object oriented programming. Each pattern presents a common problem that occurs over and over, often in multiple contexts. And then a time-tested solution to that problem. Also, each pattern is has a
name. A name helps cement the concept in your head and makes it easier to read technical materials that use these patterns.
Just recently we took over a software project from another team. The previous team made extensive (and appropriate) use of design patterns - the same patterns you will use in this workshop. Reading their code and documentation, we repeatedly came across terms like Visitor, Builder, Mediator, Flyweight, etc. Because we know these patterns inside and out we were able to quickly digest the important parts of their architecture.
Some trainers believe that design concepts can be taught independent from programming language, database and user interface considerations, with nothing but a whiteboard. This may be true, but it usually leaves the student unable to apply the principles to his or her actual project. In our workshop, we include lots of practical code examples.
When we first started teaching this workshop years ago we must admit that, at least for some of the patterns, our knowledge was purely academic. As such, some of our examples were borrowed from text books. Fast forward 10 years and this is no longer the case. We have now had occasion to use each and every pattern presented in this workshop multiple times in our own field work. We are very proud that today each pattern we present will be illustrated by at least two examples from our own projects. If we haven't used the pattern multiple times ourselves, it is not in this workshop.
We want this workshop to be immediately practical. The emphasis will be on making sure the students are able to apply the material to their projects.
Most of our public workshops are fairly small, and we avoid putting people together with drastically differing skill-levels. Because of this, we often tailor this workshop to meet the needs of each individual. So feel free to let us know if you have any particular goals or concerns and we will do our best to accommodate.
If you have any questions, please feel free to email me (Dave, the instructor) at
dford@smart-soft.com