Curso de Desarrollo Web con Angular 11 Avanzado
Angular es actualmente uno de los frameworks más completos y versátiles del mercado, el cual haciendo uso de TypeScript, se ha ganado una popularidad digna de destacar y se ha convertido en una solución integral de cara al desarrollo de aplicaciones web y sin duda merece la pena ser estudiado en profundidad.
¿Qué es Angular?
Angular 11 es uno de los frameworks más utilizados en la actualidad para hacer aplicaciones web. Nace de Angular.js y su éxito, pero cambia totalmente el paradigma de desarrollo.
No estamos ante una simple versión más, estamos ante una nueva herramienta para realizar nuestros proyectos de una forma más rápida y sencilla.
Objetivos
El objetivo del curso es que el alumno sea capaz de comprender conceptos avanzados de Angular 11 y crear aplicaciones web.
¿A quién va dirigido?
A todo desarrollador dispuesto a estar entre los primeros en dominar el nuevo framework de Google.
Schematics
- ¿Qué es Schematics?
- Ventajas de Schematics
- ¿Cómo usar Schematics de Angular CLI?
- ¿Cómo usar Schematics de Angular Material?
- ¿Cómo crear Schematics personalizados?
- Uso de Schematics propios en otros proyectos
- ¿Cómo integrar nuestros propios Schematics con Angular CLI?
- Build y publicación de un paquete de Schematics
- Implementación de Schematics como una librería
- ¿Cómo añadir soporte de ng add?
- ¿Cómo añadir soporte de ng update?
Angular Workspace
- Creación de un Workspace
- Análisis de angular.json
- Adición de múltiples proyectos a un mismo workspace
- Creación de un Dashboard de múltiples aplicaciones
Módulos
- Carga perezosa de módulos
- Impacto del lazy loading en nuestro proyecto
- Múltiples módulos de enrutado en un mismo proyecto
- Estructuración de proyectos con módulos
- Gestión de dependencias globales y por módulo
- Enrutado con submódulos
Librerías
- Creación de librerías propias en Angular
- Uso de librerías propias
Angular Change Detection
- ¿Qué es Angular Change Detection?
- El funcionamiento del mecanismo por defecto
- Ejecución el mecanismo manualmente
- Evasión de bucles según el entorno
- onPush()
- markForCheck()
- detach()
- detectChanges()
- Angular Zone
- Uso de ImmutableJS
- Debate acerca del rendimiento
Directivas avanzadas
- Creación y uso directivas de atributo propias
- Creación y uso directivas estructurales propias
- Directivas espía de ciclo de vida
Inyección avanzada
- Comprensión de la inyección de dependencias
- ¿Qué son los Modificadores?
- @Opctional()
- @Self()
- @SkipSelf()
- @Host()
- Proporcionando Servicios a Componentes
- Uso del Array de Providers
- Uso del Array de View Providers
- Diferencias entre Providers y View Providers
- Modificación la visibilidad de un servicio
- Combinación de View Providers con Modificadores
- DI Providers
- Uso de los DI Providers
- Referencias entre componentes con DI
RxJS
- ¿Qué es RxJS?
- Observables
- ¿Cómo consumir un Observable?
- Funciones comunes de Observable
- Buenas prácticas para gestionar las suscripciones
- Diferencias entre Observables y Promesas
- Subscriptions
- Subjects
- BehaviourSubjects
- Operadores más comunes de RxJS
- Operadores para gestión de errores de RxJS
- RxJS Ajax para peticiones HTTP
PWA ( Progressive Web Apps )
- ¿Qué es una PWA?
- Service Workers en Angular
- Prerrequisitos
- Comunicación
- Configuración
- Service Worker en Producción
- Creación de una PWA con Angular CLI
- Pre catching con Service Worker
- Push Notification con Express
- Compatibilidad en navegadores de escritorio y móvil
- Web workers y su utilidad
Redux
- ¿Qué es Redux?
- Debate acerca de la necesidad de Redux en proyectos Angular
- Store, Reducers y Actions
- Librería NGRX
- Redux DevTools
- Creación de un proyecto Angular con Redux
- Redux Router
- Side Effects de Redux
- Middlewares en Redux
- Gestión Asíncrona del Store
Internacionalización
- ¿Qué es la internacionalización?
- i18n en proyectos Angular
- Creación de una aplicación multilenguaje
WebPack
- ¿Qué es Webpack?
- Instalación y configuración
- Webpack plugins
- Empaquetando proyectos Angular con Webpack
Testing Avanzado
- Introducción
- Jasmine Matchers
- Jasmine Async
- Jasmine Spies
- Jasmine Mocking Ajax
- Mocks y Stubbing
- Testing de Componentes
- Testing de Servicios
- Testing de Schematics
- Testing e2e con Protractor
Despliegue y automatización
- ¿Qué es el despliegue?
- ¿Qué es el CI/CD?
- Introducción al control de versiones
- GitLab en el control de versiones
- Características de GitLab
- Creación y configuración del repositorio
- Subiendo la aplicación al repositorio GitLab
- Introducción a Netlify
- Publicando la aplicación en Netlify
- Aplicando CD en Netlify
- Introducción a Firebase
- Publicando la aplicación en Firebase
- Aplicando CI/CD en Firebase
Trabajando con Firebase
- Introducción al módulo firestore
- Preparación del proyecto
- Introducción al módulo firestore
- Conexión con firestore
- Lectura de datos en firestore
- Actualización de datos en firestore
- Borrado de datos en firestore
- Introducción al módulo storage
- Conexión con storage
- Lectura de datos en storage
- Actualización de datos en storage
- Borrado de datos en storage
- Notificaciones push con firebase
- Buenas prácticas
Proyecto final
- Enunciado del proyecto
- Recomendaciones
- Recursos y enlaces de interés
¿No es lo que estabas buscando? También hacemos temarios a medida para empresas, consúltanos.
Dispondrás de un profesor experimentado en programación y desarrollo, que te ayudará
y responderá a todas tus dudas.

Tutor personal

Proyecto final

Diploma de certificación

Plataforma online

Disponibilidad horaria
