Help developers understand and apply key object-oriented design patterns to build scalable, maintainable, and flexible software systems.
Who Should Enroll:
- Mid-level developers and tech leads
- Software engineers interested in system design
Prerequisites:
Basic knowledge of programming and software development practices
Trainer:
Rasan Samarasinghe (Profile)
Training Fee:
Rs. 15,000.00 per participant (Method of payment)
Delivery:
Online with live sessions or self-paced
Duration:
18 hours
Medium:
English
Certification:
Digital certification with the transcript upon completion
Course Modules & Structure:
1: Introduction to Design Patterns
- What are design patterns?
- History and significance (Gang of Four – GoF)
- Principles of reusable object-oriented design (SOLID)
- Categories: Creational, Structural, Behavioral
2: Creational Patterns
- Singleton: Managing shared instances
- Factory Method: Creating objects without specifying the exact class
- Abstract Factory: Families of related objects
- Builder: Constructing complex objects step-by-step
- Prototype: Cloning existing objects
Hands-on: Build a configuration manager using Singleton
3: Structural Patterns
- Adapter: Bridging incompatible interfaces
- Decorator: Dynamically adding behavior
- Facade: Simplifying complex subsystems
- Composite: Handling tree structures
- Proxy: Controlling access to objects
Hands-on: Use Decorator to add logging to services
4: Behavioral Patterns
- Observer: Event-driven systems
- Strategy: Defining interchangeable algorithms
- Command: Encapsulating operations
- State: Changing behavior based on internal state
- Template Method: Defining algorithm skeletons
Hands-on: Implement a simple event notification system
5: Applying Patterns in Real Projects
- Choosing the right pattern
- Avoiding anti-patterns and overengineering
- Combining patterns (e.g., Factory + Strategy)
- Pattern case studies from real-world applications
6: Testing & Refactoring with Patterns
- Improving code testability with patterns
- Refactoring legacy code using patterns
- Code smells and design improvement
7: Final Capstone Project
- Analyze a real-world scenario
- Apply appropriate design patterns
- Present and review solution architecture
Request this Training
We schedule our trainings based on the requests we receive. Whether you’re an individual or a team, fill out the form below to request this course. We’ll get back to you with available dates or a custom session – group or one-on-one. Learn more.