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
 28 Horas

Declaração de Clientes (3)

Próximas Formações Provisórias

Categorias Relacionadas