Web Development with Symfony2
Learn the goodnesses of the new Symfony2 framework with the best experts and get ready to start your first Symfony2 web development projects with PHP 5.3.
This intensive Symfony2 four days training allows you to acquire the essential of the Symfony2 philosophy and tools, and teaches you the best practices for developing professional web applications with PHP 5.3.
Coming sessions
| Date | Venue | Price | |||
|---|---|---|---|---|---|
|
Jun. 24 - Jun. 27 | Rome | €1,990.00 | ||
|
|||||
|
Jul. 1 - Jul. 4 | Paris | €1,990.00 | ||
|
|||||
|
Jul. 1 - Jul. 4 | Lyon | €1,990.00 | ||
|
|||||
|
Jul. 8 - Jul. 11 | Cologne | €1,990.00 | Register | |
|
|||||
|
Jul. 8 - Jul. 11 | Johannesburg | €1,990.00 | ||
|
|||||
|
Jul. 16 - Jul. 19 | London | £1,270.00 | Register | |
|
|||||
|
Jul. 22 - Jul. 25 | Paris | €1,990.00 | Register | |
|
|||||
|
Aug. 5 - Aug. 8 | Cologne | €1,990.00 | Register | |
|
|||||
|
Aug. 5 - Aug. 8 | Paris | €1,990.00 | Register | |
|
|||||
|
Aug. 26 - Aug. 29 | Paris | €1,990.00 | Register | |
|
|||||
|
Aug. 26 - Aug. 29 | Istanbul | €1,990.00 | Register | |
|
|||||
|
Sep. 2 - Sep. 5 | Cologne | €1,990.00 | Register | |
|
|||||
|
Sep. 2 - Sep. 5 | Moscou | €1,990.00 | Register | |
|
|||||
|
Sep. 9 - Sep. 12 | Paris | €1,990.00 | Register | |
|
|||||
|
Sep. 9 - Sep. 12 | Toulouse | €1,990.00 | Register | |
|
|||||
|
Sep. 23 - Sep. 26 | Shanghaï | €1,990.00 | Register | |
|
|||||
|
Sep. 30 - Oct. 3 | Paris | €1,990.00 | Register | |
|
|||||
|
Sep. 30 - Oct. 3 | Tokyo | €1,990.00 | Register | |
|
|||||
|
Oct. 7 - Oct. 10 | Bangalore | €1,990.00 | Register | |
|
|||||
|
Oct. 7 - Oct. 10 | Lyon | €1,990.00 | Register | |
|
|||||
|
Oct. 14 - Oct. 17 | Paris | €1,990.00 | Register | |
|
|||||
|
Oct. 14 - Oct. 17 | Cologne | €1,990.00 | Register | |
|
|||||
|
Oct. 14 - Oct. 17 | Nantes | €1,990.00 | Register | |
|
|||||
|
Oct. 21 - Oct. 24 | Oslo | €1,990.00 | Register | |
|
|||||
|
Oct. 28 - Oct. 31 | Stockholm | €1,990.00 | Register | |
|
|||||
|
Nov. 4 - Nov. 7 | Paris | €1,990.00 | Register | |
|
|||||
|
Nov. 4 - Nov. 7 | Helsinki | €1,990.00 | Register | |
|
|||||
|
Nov. 12 - Nov. 15 | London | £1,270.00 | Register | |
|
|||||
|
Nov. 18 - Nov. 21 | Cologne | €1,990.00 | Register | |
|
|||||
|
Nov. 18 - Nov. 21 | Paris | €1,990.00 | Register | |
|
|||||
|
Nov. 18 - Nov. 21 | Singapore | €1,990.00 | Register | |
|
|||||
|
Nov. 25 - Nov. 28 | Melbourne | €1,990.00 | Register | |
|
|||||
|
Dec. 2 - Dec. 5 | Paris | €1,990.00 | Register | |
|
|||||
|
Dec. 9 - Dec. 12 | Cologne | €1,990.00 | Register | |
|
|||||
|
Dec. 16 - Dec. 19 | Paris | €1,990.00 | Register | |
|
|||||
Goals
In four days, discover the essential of the Symfony2 framework with the best experts in the world. You will how to master the MVC design pattern, forms management, authentification principles and of course the best practices with unit testing and HTTP caching.
Program
Download the program as PDFObject Oriented Programming
- Classes vs objects
- Constructor / destructor
- Properties and methods
- Inheritance
- Visibility
- Exceptions
- Namespaces
Exploring Symfony2
- General introduction to the framework and its integrated tools
- Standard edition installation
- Symfony2 project architecture (application, bundles, libraries)
- HTTP request and response principle
- Routing configuration
- Environments
- Creating a new Bundle architecture
Configuration and Debugging Tools
- The web debug toolbar
- The profiler application
- Annotations, XML, YAML and PHP configuration
Templating with Twig
- Twig template engine syntax
- Templates inheritance
- Templates and actions inclusion
- View helpers: filters, functions and macros
- Supporting output formats (html, json, xml, atom…)
HTTP Request Processing
- Designing controller classes and actions
- Mapping controllers with the routing system
- Generating raw responses and template based responses
- Accessing request data
- Dealing with the end user's session
- Dealing with cookies
- Triggering a 404 error page and redirects
Interacting with a Relational Database
- Introduction to PDO (DSN, prepared statements, transactions...)
- Opening a connection on an SQLite or MySQL server
- Executing an SQL query on the database
- Securing SQL queries with transactions and prepared statements
- Factoring the business logic into model classes
- Implementing the data mapper or active record patterns for model classes
Handling End User's Forms Submission
- Discovering the form framework
- Creating and processing basic forms
- Defining validation rules to validate submitted data
- Prototyping the form rendering with Twig
- Retrieving validated user's data
- Designing and validating advanced forms (embedded forms, file upload...)
Security
- Securing your code against XSS issues
- Securing your code against CSRF issues
- Protecting your SQL queries to avoid SQL injection issues
Contracting a Quality Insurance with Automated Tests
- Introduction to PHPUnit
- Installing PHPUnit
- Understanding the goals of unit testing the code
- Configuring a new unit test suite for PHPUnit
- Writing unit tests cases
- Executing the unit tests suite
- Generating and understanding the code coverage report
- Writing and executing functional tests
Interacting with the User and Forms
- Discovering the form framework
- Creating and processing basic forms
- Applying validation rules on each form fields
- Prototyping forms rendering with Twig
- Customizing forms rendering with themes
- Defining and working with a data model
- Applying validation constraints on submitted data
Restricting Access to the Application
- Configuring Apache for Symfony2
- Introduction to authentication and authorization principles
- Establishing an authentication with a web form
- Establishing a security policy with access control list
- Testing user’s access rights
Improving Client Side Performances with HTTP Cache and ESI
- Introduction to HTTP cache
- Comparing several caching solutions
- Modifying the response object before it’s sent to the client
- Applying validation and expiration rules on pages
- Discovering and using Edge Side Includes (ESI)
- Installing et configuring the Symfony2 Reverse Proxy Cache
Dependency Injection and Service Container
- Understanding the dependency injection principle
- Introduction to services container
- Listing Symfony built-in services
- Registering new services in the container
- Accessing a service from the container
- Reading and writing global parameters from the container
- Exposing and validating a semantic configuration for a bundle
Session details
Reference code
SF2C4
Price
Starts at €1,990.00 (ex. tax)
Audience
PHP web developers
Duration
4 days (28 hours)
Training type
Workshop
Topics
PHP 5.3, OOP, PDO, MVC, Twig, MySQL, Best practices, Unit Testing, PHPUnit, Forms, Security, HTTP Cache
Pre-requisites
Mastering object oriented programming in PHP
