Software Education 

Custom Development 

Developer Resources 

About Simex 

Contact Simex 

Object-Oriented Design Patterns in Java

Course Length: Three Days

Course Description:

This course will introduce students to the concept of design patterns in object-oriented design and programming. Design patterns are a mechanism for capturing some of what expert designers know and packaging this information in a reusable format. Based on the seminal work by Gamma, Helm, Johnson, and Vlissides, the design patterns movement has produced a vocabulary and library of object-oriented design elements that are widely recognized. This course will study some of the most common and important design patterns including but not limited to Decorator, Façade, Factory, Mediator, Proxy, and Strategy. Although applicable in any object-oriented language, this course will present examples and hands-on exercises in the context of visual Java programming using the Java AWT and Swing. All patterns will be presented using UML diagrams and a visual Java application that demonstrates that pattern. It will be assumed that all students are familiar with UML class and sequence diagrams, and have experience programming in Java with the AWT and Swing.

A textbook with accompanying CD containing the Java applications will be provided along with a handout booklet containing all of the presentation slides from the class. Text readings and small exercises will be assigned for completion outside of class. At the end of the course there will be a short exam that will test your comprehension and retention of the concepts presented in the course. The exam will include multiple choice, true/false, fill-in-the-blank, and short answer questions, and may ask you to draw, modify, or interpret some UML diagrams. The exam will primarily be for your own benefit as you evaluate what new knowledge you've obtained and identify any areas needing further study.