Hugo Hamon is a PHP and Symfony certified developer. He worked nine years for SensioLabs, the creators of Symfony, as a Web developer, head of training and software architect. He's now a backend lead developer at Dayuse.com. On his free time, Hugo contributes to Symfony and various OSS PHP projects and local user groups.
Established in the 70's by the "Gang of Four", Design Patterns are generic reusable abstract solutions to solve often recurring problems in software design. Object oriented applications and frameworks leverage them to design robust, extensible and testable code, letting developers build their applications on top of solid foundations. In this workshop, you'll first learn the most fundamental concepts and techniques of object oriented software design such as dependency injection, the SOLID principles, composition versus inheritance, etc. Then, you'll (re)discover tens of the original "GoF" design patterns, why and how to implement them. We'll also have a look at how some famous Open-Source libraries and frameworks like Symfony to understand how they implement them and the benefits they bring to their architecture. The workshop will cover many design patterns with practical examples: Factory Method, Prototype, Builder, Composite, Adapter, Decorator, Flyweight, Template Method, Strategy, State, Mediator, Observer, Visitor, Memento, etc.