Programación con Symfony

Cas Training > Nuestros cursos > Programación con Symfony
Icono Duración del curso
Duración del curso
25 Horas
Lugar de impartición
En este momento no hay convocatorias abiertas
Icono modalidad del curso
Modalidad de impartición
Virtual
Icono Fecha del curso
Fecha de inicio
En este momento no hay convocatorias abiertas

Acerca del curso

Symfony es un framework diseñado para desarrollar aplicaciones web basado en el patrón Modelo Vista Controlado.

Para poder realizar este curso es necesario contar con conocimientos sólidos en programación de aplicaciones web en PHP.

Objetivos

Adquirir los conocimientos suficientes para crear aplicaciones web y API’s empleando Symfony.

Contenidos

  • Novedades en PHP 7
    • Características retroincompatibles
    • Características obsoletas
    • Nuevos operadores, tipos y funciones en PHP7- Spaceship y null
    • Nuevo Parser JSON
    • Nuevas declaraciones en PHP7
    • Las clases anónimas en PHP7
  • Empezando con Symfony
    • Instalación de Symfony
    • La nueva estructura de directorios de Symfony
  • Variables de entorno y configuración de Symfony
    • Los archivos de configuración
    • Entornos y variables de entorno
    • Creación de un entorno personalizado
  • Symfony Flex
    • Cómo funciona Flex
    • Actualizar aplicaciones existentes para que utilicen Flex
  • Enlazando rutas con controladores
    • Restricción de los valores de los parámetros
    • Parámetros especiales
    • Redirecciones
    • Depuración de rutas
    • Restricción de rutas por Host
    • Restricción de rutas por método
    • Restricción de rutas por protocolo
  • El sistema de plantillas Twig
    • Output escaping
    • Cómo utilizar PHP en vez de Twig como sistema de plantillas
    • Cómo Depurar variables en las plantillas
    • Cómo generar otros formatos de salida (css, javascript, xml…)
    • Cómo inyectar variables globales
    • Sobreescribir plantillas de bundles de terceros
    • Crear plantillas sin controladores
    • Cómo crear una extensión de twig
  • Los controladores
    • Manejar páginas de error y páginas 404
    • La sesión y los mensajes Flash
    • El objeto Request
    • El objeto Response. Cómo crear difierentes tipos de respuestas (html, json, file…)
    • Depuración en los controladores
  • Doctrine
    • Mapeo de relaciones
    • Transacciones
    • Consultas dinámicas con Doctrine Query Builder
    • El lenguaje de consultas DQL
    • Los repositorios
    • Ejecutar consultas con SQL Nativo
    • Doctrine y las bases de datos no relacionarles. Doctrine Mongo DB ODM
    • Ingeniería inversa con Doctrine
  • Formularios
    • Formularios configurables
    • Formularios anidados
    • Eventos en formularios
    • Creación de un theme personalizado para formularios
    • Validadores personalizados
  • Servicios
    • El patrón de inyección de dependencias
    • El service container
    • Inyección de servicios en los controladores
    • Creación y configuración de servicios
  • La consola de comandos
    • assets
    • cache
    • config
    • debug
    • doctrine
    • generate
    • lint
    • router
    • security
    • server
    • swiftmailer
    • translation
    • Creación de comandos personalizados
  • Eventos
    • El Event Dispatcher
    • Eventos del Kernel de Symfony
    • Creación de event listeners
    • Creación de event subscribers
  • Seguridad
    • Autenticación
    • Autorización
    • Roles
    • El objeto User
    • Como definir políticas de seguridad
    • Los Voters
  • Depuración en Symfony. El profiler
    • Descripción de cada una de las secciones del profiler
    • Cómo crear un Data Collector personalizado
    • Cómo acceder a los datos del profiler programáticamente
    • Cómo utilizar Matchers para activar o desactivar el profiler programáticamente
    • Cómo cambiar la ubicación del Profiler Storage
  • Traducciones
    • El proceso de traducción
    • Message Placeholders
    • Manejo de plurales
    • Traducciones en plantillas
    • Extracción de contenidos traducibles y actualización automática de los catálogos
    • Los ficheros de traducciones
    • Manejo de la localización del usuario
    • Traducción del contenido de la base de datos
    • Depuración de traducciones
  • Crear test automatizados de aplicaciones Symfony con PHPUnit
    • Tests Unitarios
    • Tests funcionales
    • Navegar en los tests
    • Redirecciones
    • Acceso a objetos internos
    • Acceso al Container
    • Acceso al Profiler
    • El objeto Crawler
    • Creación de Fixtures
    • Testeo de controladores
    • Testeo de servicios
    • Testeo de comandos de consola
    • Testeo de repositorios de Doctrine
  • Envío de emails
    • Configuración
    • Envío de emails
    • Cómo trabajar con emails durante el desarrollo
    • Cómo testear si un email ha sido enviado
  • Gestión avanzada de recursos CSS y JavaScript
    • El Asset Component
    • Asset Packages
    • Cómo versionar assets. Estrategias de versionado
    • Assets agrupados
    • Assets absolutos y CDNs
  • El sistema de Caché
    • El Reverse Proxy de Symfony
    • Cómo cachear respuestas
    • Expiración de cache
    • Validación de cache
    • Invalidación de cache
  • El sistema de Logs
    • Cómo logear un mensaje
    • Cómo logear mensajes en diferentes ubicaciones
    • Manejadores de logs nativos
    • Cómo rotar los ficheros de log
    • Cómo utilizar un blog en un servicio
    • Añadir datos extra a los mensajes de log
  • El serializer de Symfony
    • Cómo utilizar el serializador
    • Cómo añadir normalizadores y codificadores
    • Cómo utilizar Serialization Groups Annotations
    • Cómo configurar la Metadata Cache
    • Cómo habilitar un Name Converter
    • Cómo crear tu propio codificador
  • El componente Workflow
    • Cómo crear y utilizar Workflows
    • Cómo hacer dump de un workflow
  • Creación de bundles
    • Estructura de directorios de un bundle
    • Creación de un bundle
    • Cómo sobre escribir parte de un bundle
  • Deployment
    • Deployment básico
    • Tareas post-deployment
    • Cómo configurar Symfony para trabajar detrás de un balanceado de carga o de un reverse proxy

 

  • Cómo mejorar el rendimiento
    • Instalación de APCU Polyfill
    • Uso de OPcache
    • No comprobar los timestamps de los ficheros php
    • Configurar el PHP realpath Cache
    • Optimizar Composer Autoloader
Compartir:

Solicita información

Responsable del tratamiento: CAS TRAINING, S.L., con C.I.F.: B83133629 y domicilio en Calle de la Basílica 19 - 28020 Madrid.

Finalidad: Gestión de usuarios de la página web, atender las consultas planteadas y recibir información acerca de nuestros servicios.

Legitimación: Consentimiento otorgado marcando la correspondiente casilla de verificación, de acuerdo con el art. 6.1. a) RGPD. Sus datos personales serán tratados en base a nuestra política de privacidad.

Destinatarios: No se cederán datos a terceros, salvo obligación legal.

Derechos: Puede solicitar el acceso, rectificación, supresión, portabilidad, limitación, oposición, no ser objeto de decisiones automatizadas, respecto al tratamiento de sus datos de carácter personal, así como a obtener información clara y transparente sobre el tratamiento de sus datos, tal como se explica en la información adicional. A su vez, puede retirar su consentimiento cuando lo considere. No obstante, le informamos que en caso de que usted entienda que sus derechos se han visto menoscabados, puede ejercer sus derechos dirigiéndose a rgpd@cas-training.com o presentar una reclamación ante la Agencia Española de Protección de Datos (AEPD).

Información adicional: Puede consultar información adicional y detallada sobre protección de datos en nuestra página web, pinchando aquí.

Solicitar Información
Mensaje enviado correctamente
No se ha enviado su mensaje. Por favor revisa los campos e inténtalo otra vez.