Course description
Introduction
Mastering Design Patterns in Java is essential for any developer looking to enhance their programming skills. Design Patterns represent a collection of proven solutions to recurring problems in software design. By understanding these patterns, developers can create robust, maintainable, and efficient code that facilitates effective communication and collaboration within development teams. This comprehensive course delves into the 23 fundamental patterns outlined in the seminal book "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, collectively known as the Gang of Four (GoF).
Short Content Overview
Throughout this course, participants will explore a diverse range of design patterns, each addressing specific challenges encountered during software development. From creational patterns like Singleton and Factory Method to structural patterns such as Adapter and Decorator, as well as behavioral patterns including Observer and Strategy, learners will gain a deep understanding of when and how to apply each pattern effectively. The course emphasizes practical implementation, providing hands-on experience through coding exercises and real-world examples. Each pattern is examined conceptually and analyzed at the design level using Java code examples on a bank.
Learning Outcomes
By the end of this course, participants will:
1. Gain a comprehensive understanding of the 23 fundamental design patterns in Java.
2. Learn how to identify and address common software design challenges using appropriate design patterns.
3. Acquire practical skills to implement design patterns in their projects, enhancing code quality, maintainability, and scalability.
4. Develop effective communication and collaboration skills by discussing and applying design patterns within development teams.
5. Cultivate a deeper appreciation for object-oriented design principles and their practical application in real-world scenarios.
Join us on this journey to unlock the power of design patterns and elevate your Java programming expertise to new heights. Whether you're a seasoned developer or just starting your programming journey, this course offers invaluable insights and practical skills that will empower you to write cleaner, more efficient code and become a more proficient Java developer.
Upcoming start dates
Who should attend?
Prerequisites
- Understand principles of object-oriented programming
- At least one year of experience working with object-oriented languages
- At least basic knowledge of Java & UML
Training content
- Module 1: [Theory – 1.5h; Practice – 1h]
- Introduction
- Authors, Recommended reading
- OOP, UML
- Principles of object-oriented design
- SOLID
- GoF Patterns Catalogue
- Module 2: [Theory – 1.5h; Practice – 1.5h]
- Singleton, Prototype, Factory Method, Abstract Factory, Builder
- Module 3: [Theory – 3h; Practice – 3h]
- Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy
- Module 4: [Theory – 5h; Practice – 7.5h]
- Interpreter, Iterator, Visitor, Observer, Mediator, Memento, Command, Chain of Responsibility, Template method, Strategy, State
Total: theory 12,5h (45%); practice 11,5h (55%)
Certification / Credits
Objectives
After the completion of the course, students will be able to:
- Describe patterns and principles of their use;
- Define problems and benefits of design based on code reuse;
- Use patterns-related terminology in discussions, design, and development;
- Develop applications using patterns;
- Understand and use application-level patterns.
Quick stats about Luxoft Training Center?
More than 200 training courses
Conducted over 1,500 training sessions
Customized training solutions for business
Contact this provider
Luxoft Training Center
Luxoft Training Center — an essential part of the global technology leader, Luxoft, a DXC Technology Company. We play a pivotal role in propelling B2B businesses forward by delivering customized training solutions. Emphasizing the significance of learning and employee development,...