|
Web Development with Symfony3培训
|
|
班级规模及环境--热线:4008699035 手机:15921673576( 微信同号) |
坚持小班授课,为保证培训效果,增加互动环节,每期人数限3到5人。 |
上课时间和地点 |
开课地址:【上海】同济大学(沪西)/新城金郡商务楼(11号线白银路站)【深圳分部】:电影大厦(地铁一号线大剧院站) 【武汉分部】:佳源大厦【成都分部】:领馆区1号【沈阳分部】:沈阳理工大学【郑州分部】:锦华大厦【石家庄分部】:瑞景大厦【北京分部】:北京中山学院 【南京分部】:金港大厦
最新开班 (连续班 、周末班、晚班):即将开课,详情请咨询客服! |
实验设备 |
☆资深工程师授课
☆注重质量
☆边讲边练
☆合格学员免费推荐工作
★实验设备请点击这儿查看★ |
质量保障 |
1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
2、课程完成后,授课老师留给学员手机和Email,保障培训效果,免费提供半年的技术支持。
3、培训合格学员可享受免费推荐就业机会。 |
课程大纲 |
|
- Object Oriented Programming
Classes and objects
Properties and methods
Constructor and destructor methods
Class inheritance
Attributes and methods scopes (visibility)
Error handling with exceptions
Namespaces
Introducing the Symfony famework
Introducing the Symfony framework and its ecosystem
Installing the Symfony « Standard Edition Distribution »
Discovering the Symfony project architecture (application, bundles, libraries, bundles etc.)
Understanding the HTTP request processing workflow
Understanding the concept of environment (development, production and testing)
Introducing the coding and files naming conventions
Discovering the concept of a « Bundle »
Debugging the Code
Getting help from the « Web Debug Toolbar »
Introspecting the recorded logs
Profiling HTTP requests thanks to the « Web Profiler » application
Spotting problems thanks to explicit errors and exceptions stack traces
Using the Debug and VarDumper components features
Configuring the application
Comparing the supported built-in configuration format: XML, YAML and PHP
Configuring the application thanks to global parameters
Configuration application’s routes and URLs with annotations
Overriding the configuration defined by a built-in or third-party « bundle »
Generating Contents for the End User
Introducing the Twig templates engine
Comparing Twig and raw PHP templating strategies
Accessing global variables from Twig templates (request, session, user)
Using tags, filters and function to generate and format contents in a Twig template
Making templates truly extensible thanks to the template inheritance feature
Splitting templates into smaller templates chunks to avoid code duplications
Rendering a Symfony controller from within a Twig template
Generating URLs based on the application’s routes configuration
Rendering Symfony forms with custom Twig view helpers
Developping Controller and Analyzing the Request
Designing a controller class with its action methods
Mapping URL patterns to Symfony controllers thanks to annotations
Generating raw responses and Twig templates based responses
Accessing client’s information from the Request object
Reading and writing session data
Reading and writing cookies data
Triggering a 404 error page when the resource is not found
Triggering an internal redirect to another controller to avoid code duplications
Redirecting the user to another page
Interacting with the End User thanks to Forms
Discovering the « Form » component
Designing and processing simple web forms
Adding validation constraints on submitted form fields’ data
Prototyping the form rendering thanks to Twig view helpers
Gathering the form submitted data and processing them
Sending the form validated and filtered data by e-mail to some recipient
Internationalizing and Localizing the User Interface
Discovering the « Translation » component
Changing the default user’s locale
Defining custom abstract translation keys in Twig templates
Dealing with dynamic translations including pluralized sentences
Dependency Injection and Service Container
Understanding the dependency injection principle
Getting started with the Symfony service container
Listing all built-in Symfony services thanks to the command line tools
Registering new custom business services in the dependency injection container
Accessing a registered service from the service container
Creating and accessing global configuration parameters from the container
Contracting a Quality Insurance with Automated Tests
Discovering the PHPUnit tests automation framework
Understanding the goals of automating tests (unit and functional tests)
Configuring an automated tests suite
Designing and executing a unit tests suite
Designing and executing a functional tests suite
Generating code coverage reports
Interacting with the End User and Forms
Designing and processing web forms
Automating form rendering with Twig view helpers
Customizing form rendering with built-in and custom Twig form themes
Configuring form field types as services
Applying built-in validation constraint rules on submitted data
Applying custom validation constraint rules on submitted data
Contextualizing the data validation thanks to validation groups
Restricting Access to Secured Areas of the Application
Getting started with authentication and authorization principles
Securing some application’s pages thanks to a form based authentication strategy
Implementing the Security Guard sub component to handle authentication
Setting up an access control policy based on user’s roles
Testing user’s permissions from a controller and a Twig template
Registering custom authorization rules thanks to the security « voters »
Improving Application Performances with HTTP Caching and ESI
Getting started with the HTTP caching workflows
Discovering the different kind of cache systems
Comparing the expiration and validation cache strategies
Applying expiration and validation cache constraints to generated web pages
Caching page fragments thanks to the ESI technology (« Edge Side Includes »)
Installing and configuring the Symfony’s built-in reverse-proxy cache
Querying a Relational Database System with Doctrine
Discovering the basics of the Doctrine ORM
Understanding the concepts of « entities » and « repositories »
Automating PHP classes and SQL queries code generation with Doctrine
Persisting data to the database thanks to the Doctrine ORM entity manager
Fetching data back from the database thanks to Doctrine
Building and executing custom SQL queries thanks to the Doctrine Query Builder object
|
|
|
|
|
|