Opleiding: Symfony Framework Programming
In the course Symfony Framework Programming participants learn how to build modern PHP applications with the latest version of the state of the art Symfony Framework.Symfony Intro
Symfony has evolved in recent years into one of the most popular PHP frameworks. This is due to the ease of use, the good performance, the dependency injection mechanism and directly deployable components.
Symfony's Routing Architecture
In this course you will learn to install Symfony and prepare an environment for application development. Symfony's routing architecture is discussed, the handling of requests and the generation of responses.
Twig Templates
Attention is paid to Twig templates en template inheritance.
Doctrine Object Relational Mapping
Next the Doctrine Object Relational Mapping implementation is discussed. Using Doctrine PHP classes and their relations can be stored in the database.
Forms and Validation
Symfony offers many facilities for Forms and these are discussed extensively. Also the validation of forms is treated.
Services
Attention is paid to service classes, the service architecture and the registration of services with the container.
Security
The security facilities that Symfony has to offer, like authentication and authorization with the User Entity class are discussed as well.
Symfony's Kernel
Also part of the subject matter are advanced subjects like Symfony's kernel, hooking into the routing mechanism and the implementation of dependency injection.
Rest API with Symfony
Finally attention is paid to the creation of a Rest API with Symfony. At the end of the course you will have completed an extensive case study with Symfony and you are able to create robust Web applications with Symfony.
Audience Symfony Framework Programming Course
PHP developers who want to develop robust and maintainable Web Applications with the Symfony PHP Framework.
Prerequisites Course Symfony Framework Programming
Experience with PHP Programming and object oriented development with PHP is required to participate in this course.
Realization Training Symfony Framework Programming
The theory is treated on the basis of presentation slides. The concepts are illustrated with demos. The theory is interspersed with exercises. The course times are from 9.30 to 16.30.
Certification Symfony Framework Programming
The participants receive an official certificate Symfony Framework Programming after successful completion of the course.
Modules
Module 1 : Symfony Intro
- Why Symfony?
- Installing Symfony
- Console commands
- Namespaces
- Controller and Route
- How bright is the future?
- Installation
- Composer and Packagist
- Installing Symfony via Composer
- The road map
- Checking the installation
Module 2 : Bundles
- Request and Response Life Cycle
- Anatomy of a bundle
- Generating a new bundle
- Best practices
- Custom bundles versus AppBundle
- Creating templates with TWIG
- Controller/View interaction
- Conditional templates
- Installing bundles
- Data fixtures
- Defining and prioritizing features
Module 3 : Data Access
- Database configurations
- Generating an entity
- What is Object Relational Mapping
- Entity Classes
- Using doctrine
- Inserting new Objects
- Adding Columns
- Updating Table Schema
- Database Migrations
- Migrations Workflow
- Nullable Columns
Module 4 : Caching in Symfony
- Caching in Symfony
- Definition of a cache
- Caches in a Symfony project
- Key players in the
- Reverse proxy cache
- Set expiration for dashboard page
- Expiration stategies
- Validation strategies
- Doctrine cache
- ESI for selective caching
- Sophisticated bundles
Module 5 : Presentation Layer
- Asset management
- How templates are organize
- Navigate or not to navigate
- What is Bootstrap?
- Bootstrap configuration
- Creating menus
- Rendering the menu
- Dashboard template
- Overriding templates
- Profile-related templates
- Changing the backend logo
Module 6 : Security in Symfony
- Authentication
- Authorization
- User Class
- Dashboard and Security
- Security is organization
- Authentication
- Authorization
- FOSUserBundle
- Security settings
- Adding FOSUserBundle
- Adding routes
Module 7 : Testing
- TDD and BDD with Codeception
- Creating a functional test
- Developing the missing code
- Creating the unit tests
- Setting up the database
- Recreating the database for test
- Creating unit tests
- Writing code to pass test
- Running functional and unit tests
- On the CI side of the story
Module 8 : Forms and Validation
- Form Input
- Filtering
- Validating Forms
- Creating Forms
- Save and Redirect
- Flash Messages
- Utilities
- Validators
- Decorators
- Sub Forms
Module 9 : Rest API
- What is REST?
- Resource ID’s
- REST Web Services
- Simple REST Examples
- REST Web Service Principles
- Multiple Representations
- Embedded Path Parameters
- Common REST Patterns
- Resources URI Access
- JavaScript Object Notation (JSON)