Programa do Curso
Orientado a Objetos Programming
- Classes e objetos
- Propriedades e métodos
- Métodos construtor e destruidor
- Herdança de classes
- Âmbito dos atributos e métodos (visibilidade)
- Gerenciamento de erros com exceções
- Espaços de nomes
Apresentando o Symfony trabalho de fama
- Introdução ao framework Symfony e seu ecossistema
- Instalando a distribuição « Standard Edition » do Symfony
- Descobrindo a arquitetura do projeto Symfony (aplicação, pacotes, bibliotecas etc.)
- Compreendendo o fluxo de processamento da solicitação HTTP
- Entendendo o conceito de ambiente (desenvolvimento, produção e teste)
- Introdução às convenções de codificação e nomes de arquivos
- Descobrindo o conceito de um « pacote »
Depurando o código
- Obtendo ajuda da « Web Debug Toolbar »
- Inspecionando os logs registrados
- Profilagem das solicitações HTTP graças à aplicação « Web Profiler »
- Detectando problemas com pilhas de erros e exceções explícitas
- Utilizando as características dos componentes Debug e VarDumper
Configurando o aplicativo
- Comparando os formatos de configuração embutidos suportados: XML, YAML e PHP
- Configurando a aplicação graças aos parâmetros globais
- Configurando as rotas e URLs da aplicação com anotações
- Sobrescrevendo a configuração definida por um pacote embutido ou de terceiros
Gerando Conteúdo para o Usuário Final
- Introdução ao motor de templates Twig
- Comparação entre as estratégias de modelagem do Twig e PHP bruto
- Accessndo variáveis globais a partir dos modelos Twig (request, session, user)
- Usando tags, filtros e funções para gerar e formatar conteúdo em um modelo Twig
- Tornando os modelos realmente extensíveis graças à herança de modelos
- Dividindo modelos em partes menores para evitar duplicação de código
- Renderizando um controlador Symfony a partir de dentro de um modelo Twig
- Gerando URLs com base na configuração das rotas da aplicação
- Renderizando formulários Symfony com auxiliares de visualização do Twig personalizados
Desenvolvendo o Controlador e Analisando a Solicitação
- Dissenhando uma classe de controlador com seus métodos de ação
- Mapeando padrões URL para controladores Symfony graças às anotações
- Gerando respostas brutas e respostas baseadas em modelos Twig
- Accessndo informações do cliente a partir do objeto Request
- Lendo e escrevendo dados de sessão
- Lendo e escrevendo dados de cookies
- Desencadeando uma página de erro 404 quando o recurso não for encontrado
- Realizando um redirecionamento interno para outro controlador para evitar duplicação de código
- Redirecionando o usuário para outra página
Interagindo com o usuário final graças aos formulários
- Descobrindo o componente « Form »
- Dissenhando e processando formulários web simples
- Adicionando restrições de validação nos dados dos campos do formulário submetidos
- Prototipando a renderização do formulário com auxiliares de visualização Twig
- Agrupando os dados submetidos do formulário e processando-os
- Enviando os dados validados e filtrados do formulário por e-mail para um destinatário
Internacionalizando e localizando a interface do usuário
- Descobrindo o componente « Translation »
- Mudando a localidade padrão do usuário
- Definindo chaves de tradução abstratas personalizadas em modelos Twig
- Lidando com traduções dinâmicas incluindo frases no plural
Injeção de dependência e contêiner de serviço
- Compreendendo o princípio da injeção de dependência
- Começando com o contêiner de serviços do Symfony
- Listando todos os serviços embutidos do Symfony graças às ferramentas de linha de comando
- Registrando novos serviços de negócios personalizados no contêiner de injeção de dependência
- Accessndo um serviço registrado a partir do contêiner de serviços
- Criando e acessando parâmetros globais de configuração a partir do contêiner
Contratação de um Seguro de Qualidade com Testes Automatizados
- Descobrindo o framework PHPUnit para automação de testes
- Compreendendo os objetivos de automatizar testes (testes unitários e funcionais)
- Configurando uma suite de testes automatizados
- Dissenhando e executando uma suite de testes unitários
- Dissenhando e executando uma suite de testes funcionais
- Gerando relatórios de cobertura de código
Interagindo com o usuário final e formulários
- Dissenhando e processando formulários web
- Automatizando a renderização do formulário com auxiliares de visualização Twig
- Personalizando a renderização dos formulários com temas de formulário embutidos e personalizados do Twig
- Configurando tipos de campos de formulário como serviços
- Aplicando regras de restrições de validação embutidas nos dados submetidos
- Aplicando regras de restrições de validação personalizadas nos dados submetidos
- Contextualizando a validação dos dados graças aos grupos de validação
Restringindo Access a áreas seguras do aplicativo
- Começando com os princípios de autenticação e autorização
- Protegendo algumas páginas da aplicação graças a uma estratégia de autenticação baseada em formulário
- Implementando o subcomponente Security Guard para lidar com autenticação
- Configurando uma política de controle de acesso com base nos papéis do usuário
- Testando as permissões dos usuários a partir de um controlador e de um modelo Twig
- Registrando regras personalizadas de autorização graças aos « voters » da segurança
Melhorando o desempenho dos aplicativos com cache HTTP e ESI
- Começando com os fluxos de trabalho do cache HTTP
- Descobrindo diferentes tipos de sistemas de cache
- Comparando as estratégias de expiração e validação de cache
- Aplicando restrições de expiração e validação de cache às páginas web geradas
- Caching partes da página graças à tecnologia ESI (« Edge Side Includes »)
- Instalando e configurando o cache reverse-proxy embutido do Symfony
Consultando um Sistema Relacional Database com Doutrina
- Descobrindo os fundamentos da ORM Doctrine
- Compreendendo os conceitos de « entidades » e « repositórios »
- Automatizando a geração do código das classes PHP e consultas SQL com a Doctrine
- Persistindo dados no banco de dados graças ao gerenciador de entidades da Doctrine ORM
- Acessando dados de volta do banco de dados graças à Doctrine
- Criando e executando consultas personalizadas SQL graças ao objeto Query Builder da Doctrine
Requisitos
- Conhecimento do conceito Orientado a Objetos Programming
- Conhecimento de PHP
- Noções básicas de qualquer framework MVC/MVP
Público-alvo
- Desenvolvedores web
- Programadores de PHP
- Desenvolvedores que desejam construir aplicações robustas com Symfony
Declaração de Clientes (3)
Abhinav did an excellent job! Within four days he covered all the important concepts that are used in REAL software development. I am so thankful have him as our trainer!.
Vijay Joseph
Curso - Web Development with Symfony3
I liked the trainer's communication & knowledge in Symphony 3 and associated technologies. He had taken enough effort to teach and demonstrate with some examples in the respective topics. I can say my symphony knowledge and confidence level is gone up after this training.
Hari Kumar
Curso - Web Development with Symfony3
I like the Doctrine concept in Symphony taken by the trainer. The trainer is more energetic and make the sessions more interactive. I think it is a great capability of the trainer.