Java Design Patterns: Structural
1h 40mIntermediate2020-08-04
Authors

Bethan Palmer
Developer
Course details
Design patterns provide a kind of template for writing quality code. Knowing which design pattern to use in which scenario can be challenging, but will make you a better Java programmer. This course takes a deep dive into structural patterns, which can help you identify relationships and organize code into larger structures. Instructor Bethan Palmer shows how to use the seven most popular structural design patterns—Adapter, Bridge, Composite, Decorator, Façade, Flyweight, and Proxy—to write better, more maintainable Java code. She provides example use cases, complete with implementation instructions and tips for avoiding the unique challenges posed by each pattern. Every chapter contains a challenge to practice your new skills. By the end of the course, you'll be armed with the knowledge necessary to implement structural design patterns in your own Java projects.
Topics include:
Making objects compatible with the Adapter pattern
Simplifying program structure with the Bridge pattern
Handling groups of objects with the Composite pattern
Adding dynamic functionality with the Decorator pattern
Hiding complexity with the Façade pattern
Representing multiple objects with the Flyweight pattern
Creating placeholders with the Proxy pattern
Topics include:
Making objects compatible with the Adapter pattern
Simplifying program structure with the Bridge pattern
Handling groups of objects with the Composite pattern
Adding dynamic functionality with the Decorator pattern
Hiding complexity with the Façade pattern
Representing multiple objects with the Flyweight pattern
Creating placeholders with the Proxy pattern
Skills covered
Software DesignJavaOracleProgramming LanguagesSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Improve code quality with structural design patterns
- 02 - What you should know
1. Structural Design Patterns
- 03 - What is a design pattern
- 04 - Structural design patterns
2. The Adapter Pattern
- 05 - Understand the Adapter pattern
- 06 - Implement the Adapter pattern
- 07 - Challenge - The Adapter pattern
- 08 - Solution - The Adapter pattern
3. The Bridge Pattern
- 09 - Understand the Bridge pattern
- 10 - Avoid complex constructions
- 11 - Implement the Bridge pattern
- 12 - Challenge - The Bridge pattern
- 13 - Solution - The Bridge pattern
4. The Composite Pattern
- 14 - Understand the Composite pattern
- 15 - Example of when to use the Composite pattern
- 16 - Implement the Composite pattern
- 17 - Challenge - The Composite pattern
- 18 - Solution - The Composite pattern
5. The Decorator Pattern
- 19 - Understand the Decorator pattern
- 20 - Implement a Decorator class
- 21 - Change component behavior dynamically
- 22 - Challenge - The Decorator pattern
- 23 - Solution - The Decorator pattern
6. The Fa ade Pattern
- 24 - Understand the Fa ade pattern
- 25 - Implement the Fa ade pattern
- 26 - Challenge - The Fa ade pattern
- 27 - Solution - The Fa ade pattern
7. The Flyweight Pattern
- 28 - Understand the Flyweight pattern
- 29 - Recognize where to use the Flyweight pattern
- 30 - Implement the Fyweight pattern
- 31 - Challenge - The Flyweight pattern
- 32 - Solution - The Flyweight pattern
8. The Proxy Pattern
- 33 - Understand the Proxy pattern
- 34 - Recognize where to use the Proxy pattern
- 35 - Implement the Proxy pattern
- 36 - Challenge - The Proxy pattern
- 37 - Solution - The Proxy pattern
Conclusion
- 38 - Next steps
Related courses
- Cloud-Based Agentic AI Design Patterns
- Redefining Software Development Roles in the AI Era
- React: Design Patterns
- Software Architecture: Patterns for Developers
- Programming Foundations: Object-Oriented Design
- Learning JavaFX GUI Development
- Expert Domain-Driven Design (DDD) Implementation in .NET
- Project Management: Choosing the Right Online Tool