Conviértete en un auténtico experto en Symfony y haz aplicaciones completas y complejas, aprovechando toda la potencia y rendimiento posibles
Curso Symfony 5 avanzado
Tiempo de estudio: 60 horas
Duración 8 semanas
Tutelados: Seguimiento continuo
Ejercicios Prácticos
100% Bonificable Fundae
Plazas Limitadas
Próxima convocatoria:
Descatalogado
450,00€
IVA no incluido
Matriculación
Cumplimenta el formulario con tus datos.
Un miembro del equipo se pondrá en contacto contigo para completar tu matrícula.
Muchas gracia por confiar en TrainingIT para tu formación.
Curso Symfony 5 avanzado
En este curso aprenderás los muchos cambios introducidos en Symfony 5 respecto a la versión anterior (qué hay nuevo, y qué está deprecado, la nueva estructura de directorios, Flex, etc.).
Máxima Potencia
También profundizaremos en aquellos aspectos de Symfony que no son tan habituales, con los que conseguir explotar al máximo toda la potencia del mejor framework para PHP. Además de ver lo habitual (Twig, rutas y controladores, Doctrine y formularios…), veremos en profundidad temas relativos al Kernel, Event Dispatcher, seguridad, profiler y depuración, reverse Proxy, etc.).
Todo ello se verá en sesiones de varios vídeos cortos, acompañados de ejercicios y tests supervisados y corregidos por el profesor, para que no te quedes en la superficie y lo pongas en prática.
Experto en Symfony
La meta es que te conviertas en un auténtico experto en Symfony y puedas hacer aplicaciones completas y complejas, aprovechando toda la potencia y rendimiento posibles. Esto te ayudará a consolidar y mejorar tu carrera profesional y te abrirá nuevas oportunidades de empleo.
Carlos Herrera
Programador web en PHP con más de 10 años de experiencia. Experto en Symfony y Angular. Más de 7 años como profesor.
También imparto formación a empresas o a particulares (HTML, CSS, Javascript, JQuery, PHP, Symfony, MySQL, GIT, Subversion, Angular, Ionic, PHPUnit…)
1. Empezando con Symfony
1.2 La nueva estructura de directorios de Symfony 4/5
2. Variables de entorno y configuración de Symfony
2.2 Los entornos y las variables de entorno
2.3 Creación de un entorno personalizado
3. Symfony Flex
3.2 Las Recipes
3.3 Actualizar aplicaciones existentes para que utilicen Flex
3. Bloques horizontales
- Seguridad
- Almacenamiento
- Modelo de datos
- Inteligencia artificial
- Escalabilidad y rendimiento
4. Enlazando rutas con controladores
4.2 Parámetros especiales
4.3 Redirecciones
4.4 Depuración de rutas
4.5 Restricción de rutas por Host
4.6 Restricción de rutas por método
4.7 Restricción de rutas por protocolo
4.8 Generación de URLs
5. El sistema de plantillas Twig
5.1 Output escaping
5.2 Cómo depurar variables en las plantillas
5.3 Cómo generar otros formatos de salida (css, javascript, xml…)
5.4 Cómo inyectar variables globales
5.5 Sobrescribir plantillas de bundles de terceros
5.6 Crear plantillas sin controladores
5.7 Cómo crear una extensión de Twig
6. Los controladores
6.1 Manejar páginas de error y páginas 404
6.2 La sesión
6.3 Los mensajes Flash
6.4 El objeto Request
6.5 El objeto Response. Cómo crear diferentes tipos de respuestas (html, json, file…)
6.6 Depuración en los controladores
7. Doctrine
7.1 Mapeo de relaciones
7.2 Transacciones
7.3 El lenguaje de consultas DQL
7.4 El Objeto Doctrine Query Builder
7.5 Los repositorios
7.6 Ejecutar consultas con SQL Nativo
7.7 Ingeniería inversa con Doctrine
8. Servicios
8.2 El service container
8.3 Creación y configuración de servicios
9. Eventos
9.2 Ejemplo de disparo de un evento
9.3 Creación de event listeners
9.4 Creación de event subscribers
9.5 Ejemplo de suscripción a un evento
9.6 Eventos del Kernel de Symfony
9.7 Consideraciones finales
10. Formularios
10.1 Formularios anidados
10.2 Eventos de formulario
10.3 Formulario dinámico basado en los propios datos del formulario
10.4 Formulario dinámico basado en el usuario
10.5 Temas personalizados
10.6 Validaciones personalizadas
11. La consola de comandos
11.1 Cómo crear comandos personalizados
11.2 Los console Helpers
12. Seguridad
12.1 Autenticación
12.2 Roles
12.3 Autorización
12.4 Acceso al objeto User
12.5 Las anotaciones @IsGranted y @Security
12.6 Los Voters
12.7 Cómo hacer logout
12.8 El comando make:auth
13. Depuración en Symfony. El profiler
13.1 Las secciones del Profiler
13.2 Cómo crear un Data Collector personalizado
13.3 Cómo acceder a los datos del profiler programáticamente
13.4 Cómo deshabilitar el profiler en una acción concreta
13.5 Cómo cambiar la ubicación del Profiler Storage
14. Traducciones
14.1 El proceso de traducción
14.2 Message Placeholders
14.3 Manejo de plurales
14.4 Los ficheros de traducciones
14.5 Manejo de la localización del usuario
14.6 Traducción del contenido de la base de datos
14.7 Traducción de mensajes de validación
14.8 Depuración de traducciones
15. Testeo de aplicaciones Symfony
15.1 Tests Unitarios
15.2 Tests funcionales
15.3 El objeto Test Client
15.4 El objeto Crawler
15.5 Creación de Fixtures
15.6 Testeo de comandos de consola
15.7 Testeo de repositorios de Doctrine
16. Envío de emails
16.1 Configuración
16.2 Envío de emails
16.3 Cómo trabajar con emails durante el desarrollo
16.4 Cómo testear si un email ha sido enviado
16.5 Cómo configurar varios mailers
16.6 Envío asíncrono de emails
17. Gestión avanzada de recursos CSS y JavaScript
17.1 Instalación de WebPack Encore
17.2 Configuración
17.3 Manejo de archivos Sass y Less
17.4 Source Maps
17.5 Manejo de archivos TypeScript
17.6 Versionado de assets
17.7 CDNs
17.8 Cómo pasar información de Twig a JavaScript
18. El sistema de Caché
18.1 El comando cache:clear
18.2 Cache Programada
18.3 “More Advanced Caching” (PSR-6)
18.5 Cache Contracts
19. El sistema de Logs
19.1 Cómo escribir mensajes de log con Logger
19.2 Configuración
19.3 El manejador especial fingers_crossed
19.4 Configuración de log con ficheros rotativos
19.5 Cómo configurar Monolog para enviar correos
19.6 El manejador especial group
19.7 Configuración de canales
19.8 Cómo deshabilitar la precisión de microsegundos para ganar rapidez
20. El serializer de Symfony
20.1 Uso del Serializer
20.2 Cómo manejar referencias circulares
20.3 Cómo manejar la profundidad de la serialización
20.4 Normalizers
20.5 Encoders
20.6 Cómo configurar qué atributos se serializan
20.7 Cómo convertir nombres de propiedades al serializar y des-serializar
21. El serializer de Symfony
21.1 Creación de un Workflow
21.2 Cómo trabajar con Workflows
21.3 Funciones de Twig y ejemplo práctico
21.4 Eventos
21.5 Cómo depurar un Workflow
22. Creación de bundles
22.1 Cómo sobrescribir parte de un bundle
22.2 Creación de recipes
23. Deployment
23.1 Tareas post-deployment
23.2 Cómo configurar Symfony para trabajar detrás de un balanceado de carga o de un reverse proxy
24. Cómo mejorar el rendimiento
24.1 Instalar APCu Polyfill
24.2 Configurar el Service Container en un único fichero
24.3 OPCache
24.4 Configurar OPCache con Preloading
24.5 Configurar el PHP realpath Cache
24.6 Optimizar Composer Autoloader
25. Actualización de un proyecto Symfony
25.2 Actualización de un proyecto Symfony 4 a Symfony 5
objetivos
Curso Symfony 5 avanzado
Profundizaremos en aquellos aspectos de Symfony que no son tan habituales, con los que conseguir explotar al máximo toda la potencia del mejor framework para PHP. Además de ver lo habitual (Twig, rutas y controladores, Doctrine y formularios…), veremos en profundidad temas relativos al Kernel, Event Dispatcher, seguridad, profiler y depuración, reverse Proxy, etc.).
requisitos
- Conocimientos básicos de Symfony 2.x, 3.x ó 4.x
- Ordenador preferiblemente con dos monitores
- Editor de código recomendado PHPStorm
faq
Quiero bonificar el curso pero en mi empresa NO sabe cómo hacerlo
Podemos encargarnos, no te preocupes. Tiene un coste de un 10% sobre el importe del curso. Y este importe también es bonificable.
Quiero bonificar el curso y mi empresa se encargará de los trámites.
En este caso ponte en contacto con nosotros y te haremos llegar toda la documentación del curso para que podáis dar de alta la acción y grupo formativo.
¿Obtengo diploma de certificación?
Ofrecemos dos certificados:
- Alumnos que bonifican el curso:
- Certificado de asistencia al curso: para obtener este certificado debes haber completado el 75% del curso.
- Certificado de aprovechamiento: Si has completado el curso y has realizado todas las pruebas prácticas del curso, y la media de tu calificación es igual o superior a 6.
- Todos los alumnos:
- Insignia de participación: si realizas el curso completo pero tu nota en los ejercicios del curso es inferior a un 6.
- Insignia de aprovechamiento: si realizas el curso completo y tu nota en los ejercicios del curso es igual o superior a 6.
¿Cómo de estrictos son los plazos?
Los cursos están pensados entre dos fechas, para tener disponible al profesor y resto de alumnos para resolver dudas. Si no lo terminas a tiempo, seguirás teniendo acceso a la plataforma con todo el material disponible. Sin embargo, no tendrás a los profesores a tu disposición, aunque sí a otros alumnos que puedan estar en tu misma situación.Los alumnos que bonifiquen el curso tendrán que completarlo en los plazos especificados, al menos con un 75% de las actividades del curso completadas, y unos tiempos de conexión a la plataforma acordes a los tiempos de dedicación del curso. De no ser así no se podrá aplicar bonificación sobre el curso.
Soy autónomo, ¿puedo bonificar el curso?
Lamentablemente no. Sólo pueden bonificar los cursos tus empleados si los tienes. Ponte en contacto con nsotros y te ofreceremos un descuento.
No encuentro la forma de realizar el pago en la web
No puedes pagar el curso a través de la web. Rellena el formulario del curso que te interese y un miembro del equipo de trainingIT se pondrá en contacto contigo.
Cuando finalice el curso ¿seguiré teniendo acceso al curso?
Si, una vez finalice el curso podrás seguir accediendo a os materiales del mismo. Pero los profesores ya no atenderán el curso.
¿Y si no resido en España?
No supone ningún problema. Si estás contratado por una empresa española, y tienes contrato en España podrás bonificar el curso igualmente. Si no es tu caso podrás realizar el curso por tu cuenta.