Looking to learn tried-and-tested solutions to common programming problems in Java, but actually understand why (and how) those solutions work? Join world-renowned Java expert Dr Heinz Kabutz for this Java Design Patterns workshop.
Over an intensive 4 days, you'll learn how design patterns fit into the big picture in Java by taking a comprehensive look at 30 design patterns, including all of the Gang-of-Four patterns, in addition to some other lesser-known ones.
Each pattern will be discussed in detail. Great care has been made to ensure that each pattern is accurately taught, and that the code examples are safe for use in industrial strength code. Following the introduction of each pattern, you'll undertake exercises to help you apply the lessons learned in the lecture.
Learn how to:
Learn how a Java Specialist thinks when designing a Java system.
Learn how each pattern is used in the Java Development Kit (JDK).
Learn how the Java Virtual Machine optimizes our well-factored code on-the-fly.
Learn how we can make our patterns thread-safe.
Learn how modern Java 8 lambdas and Java 11 features can reduce code when implementing design patterns.
Learn how the Singleton can cause "code smells".
Learn how to get rid of copy & paste code and those pesky switch and if-else statements.
Improve your team communication by introducing a richer design vocabulary.
- Abstract Class Pattern (PLoPD4)
- Builder Pattern (GoF and Effective Java)
- Essence Pattern (PLoPD4)
- Memento Pattern (GoF)
- Proxy Pattern (GoF)
- Flyweight Pattern (GoF)
- Strategy Pattern (GoF)
- Null Object Pattern (PLoPD3)
- Iterator Pattern (GoF)
- Factory Method (GoF and Refactoring)
- Template Method Pattern (GoF)
- Composite Pattern (GoF)
- Visitor Pattern (GoF)
- Acyclic Visitor Pattern (PLoPD3)
- Object Recursion Pattern (PLoPD4)
- Default Visitor Pattern (PLoPD3)
- Adapter Pattern (GoF)
- Command Pattern (GoF)
- Decorator Pattern (GoF)
- Extension Object Pattern
- Singleton Pattern (GoF)
- State Pattern (GoF)
- Facade Pattern (GoF) and Session Facade Pattern (JEE)
- Abstract Factory Pattern (GoF)
- Interpreter Pattern (GoF)
- Mediator Pattern (GoF)
- Observer Pattern (GoF)
- Bridge Pattern (GoF)
- Chain of Responsibility Pattern (GoF)
Participants should have a good understanding of object orientation concepts such as inheritance, encapsulation and polymorphism. Knowledge of Java is an advantage.
- Previous Training: Preferably a formal qualification in computer science or related field.
- Required Experience: At least one year of professional Java programming or other object-oriented language such as C# or C++.
- Preparation: Read the book Head First Design Patterns.