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.
Coming sessions
| - | Date | Venue | Price | ||
|---|---|---|---|---|---|
|
Mar. 5 - Mar. 8 | Montreal | 1990.00 € | Register | |
|
|||||
|
Mar. 5 - Mar. 8 | Köln | 1990.00 € | Register | |
|
|||||
|
Mar. 20 - Mar. 23 | Paris | 1990.00 € | Register | |
|
|||||
|
Mar. 27 - Mar. 30 | Paris | 1990.00 € | Register | |
|
|||||
|
Apr. 3 - Apr. 6 | London | 1990.00 € | Register | |
|
|||||
|
Apr. 23 - Apr. 26 | Paris | 1990.00 € | Register | |
|
|||||
|
Apr. 23 - Apr. 26 | Hamburg | 1990.00 € | Register | |
|
|||||
|
May. 21 - May. 24 | Paris | 1990.00 € | Register | |
|
|||||
|
May. 21 - May. 24 | Köln | 1990.00 € | Register | |
|
|||||
|
Jun. 11 - Jun. 14 | Paris | 1990.00 € | Register | |
|
|||||
|
Jun. 25 - Jun. 28 | Munich | 1990.00 € | Register | |
|
|||||
|
Jun. 26 - Jun. 29 | Paris | 1990.00 € | Register | |
|
|||||
|
Jul. 2 - Jul. 5 | London | 1990.00 € | Register | |
|
|||||
|
Jul. 17 - Jul. 20 | Paris | 1990.00 € | Register | |
|
|||||
|
Aug. 27 - Aug. 30 | Paris | 1990.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...)
Contracting a Quality Insurance with Automated Tests
- Introduction to PHPUnit
- Installing the PHPUnit 3.5 unit testing framework
- 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
Security
- Securing your code against XSS issues
- Securing your code against CSRF issues
- Protecting your SQL queries to avoid SQL injection issues
Restricting Access to the Application
- Configuring an Apache virtual host for a Symfony2 project
- Introduction to authentication and authorization principles
- Establishing an authentication with a web form
- Establishing an HTTP authentication
- Restricting actions thanks to an access control list
- Testing user's permissions from within the controller and the view layers
Improving Client Side Performances with HTTP Caching and ESI
- Introduction to HTTP cache
- Comparing caching solutions (HTTP, APC, memcached...)
- Modifying the response object before it is sent to the client
- Applying validation and expiration rules with HTTP headers.
- Discovering and using Edge Side Includes (ESI)
- Installing et configuring the Symfony2 Reverse Proxy Cache
Extending Symfony2 and Twig
- Understanding the Dependency Injection (or Inversion of Control) design pattern
- Configuring new Symfony2 services in the dependency injection container
- Extending Twig with macros, functions and filters
- Installing and activating third party bundles
Session details
Reference code
SF2C4
Price
Starts at 1990.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
For further information
+33 140 998 205
We remain at your disposal for further information.


