SF7PACK5J | Web Development with Symfony 7

  • This five-day course dedicated to Symfony is the perfect training to master all the fundamental concepts and the most advanced tools of Symfony 7. At the end of this workshop, we guarantee you will be fully autonomous on the Symfony 7 framework and more!
  • Prerequisites

    Mastering PHP essentials
  • Goals

    This intensive four-day training combines both the « SF7START / Getting Started with Symfony 7 » and « SF7MASTER / Mastering Symfony 7 » courses and covers all the fundamental topics of Symfony 7. You'll start with the basics such as installing Symfony, navigating the directory structure, and generating your very first dynamic web pages with Twig. Then, you will dive more in-depth into more advanced topics and tools. Like forms and data validation, authentication and authorizations, dependency injection, automated testing, and HTTP caching. This training is delivered by our Symfony expert and contributor instructors, who enjoy sharing their experience, best practices as well as tips and tricks to help you be more efficient and autonomous with Symfony 7.

Full program

Which IDE ?

Evolution of PHP OOP

  • History of PHP OOP
  • PSR

OOP basics

  • What is OOP?
  • Anatomy of a class
  • PHP types

Advanced OOP concepts

  • Inheritance in OOP
  • static and constants
  • Interfaces
  • Abstract classes
  • Features
  • Magic methods

Exceptions and errors

Relationship between classes

  • Inheritance
  • Implementation
  • Association
  • Aggregation
  • Composition

Namespaces

Autoload

Introduction

  • Overview of the Symfony project, including license, releases, roadmap, guidelines with Symfony framework and useful components as example of doable things.
  • Work environment and Symfony command line tool
  • Installation of a Symfony project

First steps with Symfony

  • How to handle a Request - Response flow
  • Create your first web page
  • Fine-tune your application routes with parameters and requirements
  • Best practises when using controllers and their helpers

Introduction to functional tests

  • Explanations about automated tests and functional tests
  • Get ready with PHPUnit to run automated tests
  • Write your first test to check a status code over a web page
  • Use a data provider to provide URLs to be checked

Templating with Twig

  • Introduction to Twig
  • Learn Twig’s basic syntax
  • Use the Dot syntax helper in your templates
  • Use Twig to loop over data from a controller and test some conditions to design your web page
  • Use layout techniques with inheritance and template inclusions to reduce your template
  • Best solutions to get help with the Symfony console and the web profiler
  • Create dynamic URLs in your templates to access another web page or link an asset

Web assets with Webpack Encore

  • Short introduction to Webpack Encore and Yarn
  • Installation and configuration of the required bundle
  • Optimize your assets with Webpack Encore

Introduction to Doctrine

  • Introduction to the Doctrine ORM and configuration of your project to access the database
  • Create your own entities and their mapping with the Symfony maker
  • Create and apply migrations to manage the state of your database at anytime
  • Handle relations between 2 entities
  • Store data in the database by using a controller
  • Retrieve data from the database by using built-in or custom queries

Forms

  • Introduction to Symfony forms
  • Create your own form with custom types
  • Handle submitted data
  • Use Symfony built-in constraints to get validated data

Obtaining data remotely

  • Introduction to the HttpClient component
  • Preparing requests using ScopedClients

Organising your code

  • Environments in Symfony
  • Introduction to dependency injection and Symfony services 
  • Using the best way to determine available services 
  • Using autowiring to inject dependencies into a constructor, setter or attribute
  • Completing a service using decoration

Decouple your code

  • Introduction to events and how to propagate them in a Symfony project
  • Creating subscribers and listeners
  • List of important events to be aware of in a Symfony application

Secure your application

  • Introduction to authorisation in a Symfony project
  • Checking your users' roles to give them access to certain application resources 
  • Creating custom voteurs to handle rare situations that require special checking in PHP

Serializing your data

  • Introduction to the Serializer component
  • Serialization contexts and groups
  • Normalizing complex data
  • Creating a customized normalizer

Online review platform - 1 month access

  • Daily test
  • Documentation

Appreciation of the training

Global average : 4,7/5

  1. Educational rating : 4,8/5
  2. Content rating : 4,7/5
  3. Pace rating : 4,5/5
The ratings are the synthesis of the cumulative assessments of our trainees from 01/01/2024 to 09/01/2024

Evaluative methods

  • A control of knowledge in the form of multiple choice questions is carried out during and at the end of the training. It allows to validate and take back the points not assimilated.
  • A certificate of successful completion of a training action is sent to the learner.
  • A copy of the attendance sheet is transmitted.

Terms of registration

  • Registration can only be made using the registration form available on our website or via the training team e-mail.
  • Registration will be completed only after receiving the signed aggreement and the full payment before the start of the training.