Curso de Symfony
Aprende a crear aplicaciones web con el framework PHP Symfony
Material disponible
Intermedio
10 Clases 18 h
99€
79€
Precio en promoción
Symfony es uno de los frameworks de PHP más usados a nivel mundial y uno de los más potentes y complejos que existen. Symfony permite el desarrollo acelerado de todo tipo de proyectos web, en base a un set de componentes PHP reutilizables y un poderoso conjunto de herramientas de línea de comandos, que permiten automatizar muchas de las tareas necesarias en el desarrollo de aplicaciones web.

Symfony permite desarrollar aplicaciones sobre un elevado estándar de calidad del software, que promueve las mejores prácticas y facilita la creación de proyectos robustos, escalables y de fácil mantenimiento. Es una herramienta indispensable de empresas y desarrolladores PHP avanzados. 

Durante el curso utilizamos la versión 4.2 de Symfony. 

Qué aprenderé en el Curso de Symfony

  • Qué es Symfony
    • Qué es un framework
    • Qué es MVC
  • Características principales de Symfony
    • Framework MVC
    • Orientado a Objetos
    • Amplia comunidad
    • Muy extensible
  • Para qué Symfony
  • Por qué Symfony (breve comparativa con alternativas)
    • Laravel
    • ZendFramework
    • CakePHP
  • Instalación vía composer
  • Primera ejecución
  • Revisión de archivos creados
  • Estructura de un proyecto
    • Directorios
    • Clases básicas
    • Controller
    • Request
    • Response
  • Ciclo de vida de un request
  • Routes
  • Uso del comando console
  • Templates
    • Twig
    • Layouts
  • Debugging
    • WebProfiler
    • XDebug
  • Deployment en producción
    • Archivos .env
    • Manejo del caché
    • Permisos
  • Configuración vía annotations
  • Qué es Doctrine
    • Qué es un ORM
  • Por qué Doctrine
    • Eloquent
    • Propel
  • Operaciones básicas
    • Creación de un modelo de datos simple
  • Consultas dentro de controllers
  • Repositorios
  • Formularios
    • Creación
      • Widgets
      • Clases formulario
      • Formularios anónimos
    • Validación
    • Procesamiento
  • Bundles
    • ¿Qué son?
    • ¿Para qué sirven?
    • ¿Cómo se usan?
    • Flex
  • Servicios
    • ¿Qué son?
    • ¿Por qué usarlos? ¿Cuándo usarlos?
    • Creación
    • Uso
  • Creación de comandos de consola
    • Para qué
    • Cómo se crean
    • Cómo se usan
  • Seguridad
    • Firewalls
  • Envío de correos electrónicos
    • SwiftMailer
  • Creación de bundles
    • ¿Para qué?
    • ¿Cómo?
  • Internacionalización
    • ¿Para qué?
    • ¿Cómo funciona?
      • Archivos de mensajes
      • Organización de las claves
    • Uso desde Twig
    • Uso desde Controllers
  • Testing automatizado
    • Tests funcionales
    • Tests unitarios
  • Repaso general
  • Bundles interesantes
    • FOSUserBundle
    • Monolog
    • EasyAdmin

Objetivos del curso

Establecer las bases para el desarrollo aplicaciones basadas en Symfony, facilitando el aprendizaje gradual de los componentes principales del framework. Ofrecer a los estudiantes un conocimiento sólido de los estándares de calidad que Symfony promueve, haciendo hincapié en asuntos tan importantes como la reutilización, estructuración basada en componentes, usabilidad y seguridad.

Una vez acabado el curso de Symfony el estudiante será capaz de comprender el framework de manera global y desarrollar proyectos de una manera ágil. Será capaz de aprovechar las virtudes del framework, para generar aplicaciones con código de alta calidad y de sencillo mantenimiento.

Por qué debes aprender Symfony

Las clases están organizadas de modo que se puedan eliminar las dificultades habituales en el aprendizaje de los estudiantes, al aproximarse a herramientas complejas y sofisticadas como Symfony.

Qué tengo que saber

  • Experiencia previa con el lenguaje PHP
  • Conocimientos de PHP Orientado a Objetos
  • Manejo básico de Composer

Clases y contenidos

Primer proyecto Symfony Gratis
  • Primer proyecto Symfony
  • Estructura básica de un proyecto Symfony
  • Controladores
  • Ruteo
  • Utilidad de línea de comandos
Configuración de Symfony bajo Virtualhost con Laragon

En esta clase extra vemos otra configuración para el inicio de un proyecto con Symfony. Instalaremos el proyecto y luego usaremos Apache como servidor web de desarrollo. La gracia es configurar el virtualhost, para trabajar con un nombre de dominio que tenemos en local. Esto es muy fácil de conseguir en Windows con Laragon. También vemos la instalación de herramientas necesarias para desarrollar, como Composer o Git.

Templates, debugging y Deployment

En esta sesión nos centramos en el trabajo con Templates, herramientas de debugging que nos provee Symfony y cómo llevar nuestra aplicación a un servidor de producción.

Manejo de Bases de datos de una aplicación Symfony
  • Symfony y Doctrine
  • Creación de modelos de datos
  • Operaciones básicas
  • Alternativas a Doctrine
Formularios e internacionalización

Creación de formularios que permitan la interacción e internacionalización de una aplicación Symfony para poder alcanzar con el mismo código a usuarios con diferentes idiomas.

Seguridad, login y envío de correos electrónicos

Comenzamos la sesión repasando dudas de la sesión anterior sobre la validación de unicidad de los campos y sobre la internacionalización de la aplicación. Continuamos con la autenticación y autorización en seguridad, envío de correos electrónicos y registro de eventos que suceden en nuestra aplicación.

Servicios y creación de comandos de CLI
  • Servicios en Symfony: ¿qué son?, ¿por qué usarlos?, ¿cuándo usarlos? creación y uso
  • Creación de comandos de consola: ¿para qué? , ¿cómo se crean? , ¿cómo se usan?
Bundles
  • Extensión del framework mediante el uso de bundles o funcionalidades propias o de terceros:
    • ¿Qué son?, ¿para qué sirven?
    • ¿Cómo se usan?
    • Adaptación, distribución, ....
Testing automatizado
  • Testing automatizado:
    • Tests funcionales
    • Tests unitarios
  • Manejo del Frontend en Symfony
Proyecto integrador Symfony

Desarrollo de una aplicación que permita implementar lo aprendido durante el curso. La idea es crear una aplicación a través de la cual los visitantes puedan aplicar a ofertas de trabajo.

Valoraciones

Jose Carlos Gómez López

Joel Coll

¿Conoces nuestra tarifa plana?

Toda la formación de EscuelaIT, con más de 130 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.

Suscríbete