SF4C3 | Extending & Hacking Symfony 4

  • This training leads you to the greatest Symfony 4 level and helps you improve and confirm your current knowledge of the Symfony 4 framework! The training focuses on how to easily hack and extend some parts of the Symfony framework thanks to the dependency injection container. You'll also learn how to master some advanced tools such as the form and validation components, as well as the event dispatcher system to decouple your code.
  • Prerequisites

    Mastering Symfony 4
  • Goals

    In two days only and thanks to our expert instructors, you'll be able to improve your current Symfony skills. This training helps you to better understand how Symfony works under the hood and how you can easily hack and extend the configuration layer, the HTTP kernel, the form and validator components as well as the authentication and authorization layers. Be prepared to effectively master Symfony and its internals!

Full program

Leveraging the Symfony Console Component

  • Discovering the Symfony Console component
  • Automating heavy tasks thanks to the command line
  • Designing and enabling interactive
  • Using the « Formatter » helper to colorize the console
  • Using the « ProgressBar » helper to develop progression bars
  • Using the « Table » helper pour display tabular data in the console output

Auditing your Application with the Symfony Profiler

  • Analyzing collected data from the profiler
  • Analyzing collected data from the application’s code
  • Configuring the web profiler for the production environment
  • Designing custom data collectors to extend the Symfony Profiler
  • Extending the « Web Debug Toolbar » and the « Web Profiler » with new debug panels

Dependency Injection and Service Container

  • Rediscovering some basics about the dependency injection principles
  • Registering custom business services in the service container
  • Understanding the concept of services « tags » to extend the framework built-in tools
  • Developing custom « compiler passes » objects to optimize the container compilation

Authentication and Access Control Layers

  • Developing a custom user provider class
  • Recording the last connection date and time of the user
  • Triggering custom business code when the user impersonates another user
  • Setting up a fined grained resources access control policy thanks to security voters

Forms and Data Validation

  • Understanding the internals of the « Form » component
  • Extending or overriding built-in form field types
  • Developing custom form field types
  • Registering new form field types as services
  • Developing new custom data transformers
  • Modifying the form’s data and structure thanks to form events listeners
  • Displaying form fields depending on user’s permissions thanks to form field types extensions
  • Developing new custom data constraint validators

Decoupling Code with Event Programming

  • Discovering the kernel events and other components built-in events
  • Extending the kernel behaviors with custom kernel events listeners
  • Dispatching custom business events to make the code truly extensible
  • Connecting custom event listeners to custom business events

Extending the Doctrine ORM (on demand)

  • Creating new custom storage form field types (ie. « Money » column type)
  • Extending the default DQL syntax with custom DQL functions

Time program

Day 1

Appreciation of the training

Global average :

  1. Educational rating : N.C
  2. Content rating : N.C
  3. Pace rating : N.C
  • Duration

    2 day(s)
  • Level

    Improvement
  • Available languages

    French, English, German, Spanish
  • Available countries

    Belgium, France, Germany, Spain, United Kingdom, United States, Worldwide
From €1,161.00
No session scheduled

No session is scheduled for this course. However we organize tailored training courses: contact us for more informations!