This engaging eight-hour design pattern training course presents a core set of design patterns every developer should know. It explores the forces underlying patterns that make them valuable for building software.
You’ll see how understanding patterns reveals the essence of object-oriented thinking and creates a useful context for solving various software problems. You’ll understand patterns as more than “reusable solutions to common problems within a given context” and recognize them as a collection of forces that help you penetrate deeper into problems, discovering elegantly simple solutions that make your software more robust and easier to maintain.
The expanded view of design patterns you’ll gain from this course will help you encapsulate and abstract virtually any problem with maximum flexibility and without over-complicating the solution. You’ll learn to make better coding choices and will master a shared vocabulary for talking about design that dramatically improves inter-team communication.
By the end of this design patterns course, you’ll be armed with several new, effective tools for solving design problems that will empower you to produce immediate improvements in the quality of the software you design and build.
Completing this design patterns class will give you a deeper understanding of the object-oriented development paradigm and enable you to:
This design patterns course is for all team members and has the greatest impact when the entire team attends. This course will benefit Architects, DBAs, Designers, Developers, Development Managers, Directors, Product Managers, Programmers, QA Engineers, Software Engineers, Technical Analysts, Technical Leads, Technical Writers, and Testers. Familiarity with basic Object-Oriented (OO) concepts and terminology is recommended.
In One Full-Day (8-Hour) In-Person Session
Session 1 — Design
In Two Half-Day (4-Hour) Online Sessions
Session 1 — Design
Session 1A — Design
Design Exercise Case Study: Presentation and discussion of a representative design problem and using patterns to solve it, examining the trade-offs of different patterns.
My continuing passion for software design and construction has led me to train more than 10,000 developers in the last twenty-six years for clients that have included Fortune 500 firms such as Microsoft, IBM, Yahoo!, Boeing, AT&T, Sprint, Medtronic, SunGard, State Farm, MetLife, and Weyerhaeuser. As a longtime IBM consultant, I trained software engineers around the globe, giving them the skills to write the next generation of applications and operating system software while earning one of the highest satisfaction ratings in the history of IBM education. Since 2006, I’ve devoted my consulting practice to providing organizations with training and coaching for software developers and teams transitioning to Agile and Scrum.
“I learned how to think effectively about code quality. I learned principles and practices of effective design. It explains patterns in plain English. David’s teaching style is very engaging and clear. I would highly recommend this class to any level of developer.”
—Todd Froyland, Senior Tech Lead/Architect“This class is essential to any technical professional in a development environment. The approaches covered will help with every phase of the development cycle on any size team or project.”
—Tyler Ashbridge, Director of Systems Development“We will be significantly faster at accommodating last-minute things that always seem to come up in our work. Even if you think it may not apply to you, do it. You will see how it does apply.”
—Martin Murphy, Senior Scientist
View a pdf version of this course description