February 26-28, 2014
Montreal, Canada

Mastering Symfony2

Originally created for the internal needs of the french SensioLabs company, the Symfony framework has been open sourced in 2005 to become the most famous PHP 5.3 framework for building professionnal applications. It's already used and supported by a growing PHP developers community from many well known Open Source projects such as Drupal, phpBB, Doctrine, Composer, Silex, Behat or eZ Publish.

This workshop will guide into the understanding of the most interesting and advanced features of the Symfony framework. In only two days of intensively practicing Symfony with a SensioLabs Symfony Certified expert, you will learn how to master the most interesting features such as dependency injection, authentication mechanisms, forms and validation, functional testing and even edge caching with ESI.

This workshop is also the best training to learn the Object Oriented Design and Symfony development best practices. The trainer will teach you how to take leverage the best object oriented design techniques like dependency injection but also how to make your bundle easily configurable and extendable. You will also discover how you can write clean, understandable and testable code by decoupling your classes into small services and entities.

At the end of this very practical workshop, you will be able to write your first professional applications!
  1. Symfony Basics
    • Installing Symfony with Composer
    • Designing routes
    • Creating controllers
    • Handling views with Twig
    • Dealing with the Request and Response object
  2. Dependency Injection and Service Container
    • Understanding the dependency injection principle
    • Registering new services into the container
    • Accessing services from the container
    • Dynamic services configuration with PHP
  3. Bundles best practices
    • Understanding the bundle directory structure
    • Organizing files in a bundle
    • Exposing and validating a bundle specific configuration
  4. Unit and functional testing with PHP
    • Introduction to automated testing with PHPUnit
    • Understanding the goals of unit testing the code
    • Writing and executing a unit tests suite
    • Generating and understanding a code coverage report
    • Writing and executing a functional tests suite
  5. Managing a MySQL Database with Doctrine
    • Configuring a MySQL database connection with Doctrine
    • Describing a database schema with a PHP entity mapping
    • Querying a database with Doctrine
    • Persisting entities to a database
  6. Forms and Validation
    • Discovering the form framework
    • Creating and processing basic forms
    • Applying validation rules on each form field
    • Prototyping forms rendering with Twig
    • Customizing forms rendering with themes
  7. Authentication and Authorizations
    • Introduction to authentication and authorization principles
    • Creating a basic login form authentication system
    • Restricting access to resources thanks to roles
    • Controlling the current logged-in user permissions
  8. Improving Client Side Performances with HTTP Cache and ESI
    • Introduction to HTTP cache
    • Discovering expiration and validation caching strategies
    • Implementing reverse proxy caching with Edge Side Includes (ESI)

Hugo Hamon


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 joined Dayuse.com as a backend lead developer between 2018 and 2020. He's now a full time freelance PHP consultant at his own company KODERO.

Read More

Montreal 2014 sponsored by