Course Outline
Introduction to Design Patterns
- Definition and role of design patterns
- Rationale for adopting design patterns
- Gang of Four (GoF) and classification of patterns
- Core design principles (SOLID, DRY, KISS, YAGNI)
Creational Design Patterns
- Factory Method
- Abstract Factory
- Singleton
- Builder
- Prototype
Structural Design Patterns
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Behavioral Design Patterns
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
Implementing Design Patterns in Practical Applications
- Usage of design patterns in enterprise systems
- Refactoring legacy code with design patterns
- Combining multiple patterns for resilient solutions
- Best practices and common pitfalls
Summary and Next Steps
Requirements
- Proficiency in Java programming
- Knowledge of Object-Oriented Programming (OOP) principles
- Familiarity with fundamental software architecture concepts
Audience
- Java developers seeking to refine their design capabilities
- Software architects building scalable systems
- Technical leads focused on improving code efficiency and maintainability
Testimonials (5)
- The course progression (from JVM internals to more high-level topics) - Some insights from practical exercises - Visual style (not some presentation, but a nicely styled page)
Ivan Suvorov - Deutsche Bank
Course - Java Advanced
That we got a complex overview also about the context - for example why do we need some annotations and what they mean. I liked the practical part of the training - having to manually run the commands and call the rest api's
Alina - ACCENTURE SERVICES S.R.L
Course - Quarkus for Developers
The extra information that was shared, the training was not straightforward groovy, which was nice.
Covenant - Vodacom
Course - Groovy Programming
Detailed information provided on the more advanced topics requested.
Farukh Khan - Tandem Solution
Course - RabbitMQ with Java and Spring
The breadth of the topis covered was quite a bit and the trainer tried to do justice to that.