O'Reilly logo
live online training icon Live Online training

Design patterns boot camp II

Topic: Software Development
Elisabeth Robson
Eric Freeman

Design patterns are crucial for building reliable, extensible, and resilient-to-change, object-oriented software. They help you move faster and avoid common miscommunications in a development effort.

Experts Eric Freeman and Elisabeth Robson pick up where Design Patterns Boot Camp I left off, walking you through the Gang of Four (GoF) structural and creational patterns (along with a fair number of behavior patterns).

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • The core patterns defined in Design Patterns: Elements of Reusable Object-Oriented Software
  • Ways to incorporate design principles into software design

And you’ll be able to: - Communicate more efficiently with coworkers using a broad design pattern vocabulary - Draw on a set of proven ideas to solve software design problems - Use more patterns in your everyday software design work

This training course is for you because...

This course is for you because… - You’ve taken Design Patterns Boot Camp I (or equivalent), and you want to continue your study of the core design patterns. - You’re a software designer or architect who wants to build more flexible and maintainable software and better communicate with your team. - You’re an engineering manager who wants to learn how your team can use patterns in the software design process.



Recommended preparation:

Recommended follow-up:

About your instructors

  • Elisabeth Robson is the coauthor of several Head First books, including Head First Design Patterns, and is a principal at WickedlySmart, an online learning company for software developers.

  • Eric Freeman is a computer scientist, technology writer, and entrepreneur. Previously, he was a CTO at the Walt Disney Company. Eric’s most recent book, Head First Learn to Code, is a beginner’s guide to coding and computational thinking. Eric lives with his wife and young daughter in Austin, Texas. He holds a PhD in computer science from Yale University.


The timeframes are only estimates and may vary according to how the class is progressing

Introduction and review (20 minutes)

  • Lecture: The GoF patterns; the underlying OO principles; how patterns are defined (the catalog, pattern structure, and OO diagrams); highlights from Design Patterns Boot Camp I

Encapsulating invocation (20 minutes)

  • Lecture: The command pattern; the single responsibility principle revisited

Encapsulating algorithms (20 minutes)

  • Lecture: The template method pattern; related design patterns; the Hollywood principle revisited
  • Q&A
  • Break (5 minutes)

Surrogate objects (20 minutes)

  • Lecture: The proxy pattern; three types of proxies; related design patterns

Constructing objects (15 minutes)

  • Lecture: The builder pattern; build and design principles; related design patterns

Encapsulating abstraction (20 minutes)

  • Lecture: The bridge pattern; varying the implementation and the abstraction
  • Q&A
  • Break (5 minutes)

Creating by copying (20 minutes)

  • Lecture: The prototype pattern; real-world prototypes

Managing objects (20 minutes)

  • Lecture: The flyweight pattern; loose coupling revisited

Where do I go from here? (15 minutes)

  • Lecture: Where to go after this course; areas of study and resources
  • Q&A