
Desarrollo Web con Symfony
¿Qué vamos a tratar?
El curso de Desarrollo Web con Symfony Básico/Intermedio forma parte de un conjunto de acciones formativas mediante las cuales Estech, Escuela de Tecnologías Aplicadas pretende facilitar una primera inmersión a todos aquellos interesados en el mundo del desarrollo web, con un enfoque múltiple y globalizador que abarca algunas de las tecnologías más empleadas en el desarrollo de una app web, así como una serie de técnicas que dotan al proceso de organización, calidad y profesionalidad.
Este curso pretende ser un punto de inicio al desarrollo de aplicaciones web con el framework Symfony y al lenguaje de programación PHP. Gracias a él, el alumno podrá aprender y entender se estructura y desarrollo de una app web desde cero.
No cabe duda que en estos momentos, la situación del mercado laboral en el ámbito del desarrollo de aplicaciones se encuentra en expansión. Del mismo modo podemos afirmar que se trata de un entorno muy competitivo en el que para destacar y progresar es necesario dotarse de conocimientos sólidos y de buenas prácticas.
Desde Estech, Escuela de Tecnologías Aplicadas estamos convencidos de que este curso sumará a la formación del alumnado y le pondrá a la vista un abanico de posibilidades de modo que pueda optar a oportunidades de trabajo en cualquier empresa (incluso a nivel mundial) que requiera un perfil de desarrollador web full stack Junior.
Todos los módulos que conforman esta serie pretenden dotar de un importante componente práctico a la formación.
Como metodologías de programación se seguirán principalmente los principios de desarrollo Agile, Clean Code y patrón MVC. Gracias a estas técnicas, el alumno podrá saber cómo se trabaja día a día en una empresa dedicada íntegramente al desarrollo de apps.
Nota
Este curso está estructurado de manera que la primera parte del mismo pertenece al nivel Básico y la segunda parte junto con la primera al nivel Intermedio.
Requisitos
No necesitas conocimientos previos, pues empezaremos desde cero con una serie de ejemplos prácticos y al término del curso, desarrollaremos un proyecto real en el cual aplicaremos todo lo aprendido.
En la Escuela dispondréis de todo el hardware y software necesario. Para este curso utilizaremos Sublime Text y Visual Studio Code como IDEs , además de varios plugins que harán optimizarán el trabajo. Para el control de versiones utilizaremos Git y Github.
Programa
Nivel Básico
Módulo 1: Introducción a Symfony.
- ¿Qué es Symfony?
- Distintas versiones de Symfony desde su comienzo.
- Cuales han sido las mejoras lanzadas en cada nueva versión de Symfony
- Futuro: ¿cuánto gana un Symfony developer?
Módulo 2: ¿Que se necesita para comenzar con Symfony?
- Servidor local: LAMP.
- Nuestro lenguaje será PHP.
- Otras alternativas (servidor remoto y virtualización).
Módulo 3: Introducción a PHP
- Variables.
- Arrays tradicionales y asociativos.
- Estructuras condicionales.
- Estructuras repetitivas.
- Declaración y llamadas de funciones.
- Funciones básicas propias de PHP.
- Particularidades.
Módulo 4: Arquitectura de un proyecto Symfony
- Conociendo la estructura de carpetas y ficheros principales.
- Presentación del IDE de desarrollo PhpStorm.
Módulo 5: Patrón de diseño
- ¿Que es MVC?
- ¿Para qué sirve el patrón MVC?
Ejemplo.
Módulo 6: El Modelo.
- El ORM: Doctrine.
- Conexión a la base de datos.
Módulo 7: La Vista.
- El motor de plantillas: Twig.
- Integración de Bootstrap en Twig.
Módulo 8: El Controlador.
- Como conectar nuestro Modelo y nuestra Vista mediante el Controlador.
- Ejemplo
Módulo 9: Más conocimientos
- Mejores blogs de Symfony.
- Conferencias más importantes a seguir.
- Más información sobre Symfony.
Nivel Intermedio
Módulo 10: Control de versiones GIT
- ¿Que es GIT?
- Consola & Cliente
- Ramas MASTER – DEV – FEATURE
Módulo 11: Introducción a Composer
- ¿Qué es Composer?
- Beneficios del control de versión usando Composer
- Instalación y configuración
- Ejemplo: FOSUserBundle.
Módulo 12: Desarrollo Agile and TDD
- ¿Qué es el clean code?
- ¿Qué es el desarrollo ágil?
- Introducción al TDD
- Tipos de test unitarios
- Ejemplo: Crear usuario
Módulo 13: Comunicación de nuestra app con el backend. API Restful
- ¿Que es una API Restful?
- ¿Qué son los recursos?
- Cómo crear un API RestFul con FOSApiBundle.
- Instalación y uso básico de FOSApiBundle.
- Crear nuestros modelos JSON.
Módulo 14: Optimizando el envío de información
- El bundle Serialize.
- Cómo instalar y configurar Serialize.
- Restringiendo la información mediante anotaciones en nuestras entidades.
Módulo 15: El patrón: Inyección de dependencias
- Inyección de dependencias.
- Contenedor de dependencias.
- Integración de clases como un servicio en Symfony.
- ¿Qué ganamos con esto?
- Ejemplo.
Módulo 16: Push notifications
- Introducción a Firebase
- Configurar Firebase en nuestro back end.
- ¿Qué son los canales?
- Una push nos lleva a un evento
- Certificados push en Apple Developer Account
Módulo 17: Control de bugs
- Symfony Debug Component
- Debug bar
- Qué es LadyBugBundle?
Módulo 18: Targets
- ¿Por que diferenciar entre distintos entornos?
- ¿Cómo configurar DEV y PROD?
- ¿Cómo saco beneficio a mis dos entornos?
Herramientas digitales
