Especialidad formativa
Desarrollo back end con nodejs
Qué aprenderás
Usar nodeJS como modelo de entrada y salida sin bloqueo y controlado por eventos para ser liviano y eficiente frente a las aplicaciones en tiempo real de uso de datos que se ejecutan en los dispositivos.
Contenido del curso
01
JAVASCRIPT AVANZADO
- OBJETIVO
- Dominar JavaScript y conocer herramientas esenciales como NPM, los transpiladores y la librería RxJS
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de:
- JavaScript Avanzado
- Promise APIs y Async/Await.
- Paquetes NPM.
- Recurso Package.json.
- Proceso de configuración de los linters para la revisión de estilo de código.
- Publicación de paquete NPM vía script.
- Librería RxJS
- B.- Capacidades cognitivas y prácticas
- Asunción y desarrollo de una aplicación ejecutable escrita en JavaScript e implementar distintas funcionalidades, así como aplicar los consejos de buenas prácticas.
- Profundización en el conocimiento de JavaScript, NPM y NodeJS.
- Automatización de la optimización del código y su reutilización en otros proyectos
- Utilización de las Fetch API, a desarrollar de forma ordenada un código desde cero y a formatear el contenido utilizando distintos recursos, a través de laboratorio práctico.
- Utilización de Javascript viendo en detalle el event loop, pasando por la programación asíncrona, hasta llegar a las técnicas más avanzadas, como el manejo de promesas y el uso de frameworks y librerías modernas, a través de la resolución de casos prácticos.
- Entrenamiento en la creación, publicación y uso de paquetes NPM, utilizando el recurso Package.json y el proceso de configuración de los linters para la revisión de estilos, a través de laboratorio práctico.
- Optimización de eficiencia con NodeJS
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Asimilación de la importancia del detalle y el diseño del código para obtener resultados que conlleven a una elevada satisfacción de la persona/empresa usuaria.
- Capacidad de manejo de propuestas y alternativas sobre el uso NodeJS.
- Efectividad en el desarrollo de forma ordenada un código desde cero y, formatear el contenido utilizando distintos recursos.
- Cumplimiento de los plazos de entrega como para ordenar correctamente el código y adaptarse a los métodos de trabajo del proyecto.
02
APIs
- OBJETIVO
- Crear una API REST en Node.js
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de APIs REST con Node.js y Express
- B.- Capacidades cognitivas y prácticas
- Automatización de funcionalidades fuera de los servicios para reaccionar a solicitudes externas de una forma óptima, mediante la creación de APIs.
- Asunción y desarrollo de códigos de Node.js y Express.js para crear una API.
- Creación de APIs REST con Node.js y Express, así como a manejo de cookies y sesiones, a través de laboratorio práctico.
- Utilización de una API Lista de tareas desde un recurso REST, haciendo uso de ExpressJS, y sesiones para almacenar las tareas de cada cliente/a.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Asimilación de funcionalidades fuera de los servicios para reaccionar a solicitudes externas de forma responsable.
- Capacidad de análisis del estándar para desarrollar aplicaciones Back End con Node.js
- Capacidad de implementar REST de distintas maneras.
03
BASE DE DATOS
- OBJETIVO
- Interactuar con bases de datos desde Node.js
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de bases de datos usando Node.js
- B.- Capacidades cognitivas y prácticas
- Identificación de los distintos tipos de bases de datos más usadas en el entorno de Node.js
- Automatización de operaciones con diferentes bases de datos con la finalidad de persistir estado.
- Comprensión del trabajo con diferentes tipos de bases de datos usando Node. js.
- Creación de estructura de base de datos con una finalidad recomendada a través de un caso práctico de uso.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Capacidad de identificar los distintos tipos de bases de datos más usadas en el entorno de Node.js
- Habilidad para establecer conexión a bases de datos en Node.js como aspecto fundamental en el desarrollo web.
- Comprensión de las operaciones con diferentes bases de datos con la finalidad de persistir estado.
04
MOTORES DE PLANTILLAS
- OBJETIVO
- Conocer los motores de plantillas y aprender a usar Handlebars para crear páginas web usando el servidor Express.js
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de motores de plantillas y su aplicación en el contexto de Node.js y Express.js.
- B.- Capacidades cognitivas y prácticas
- Asunción y desarrollo del funcionamiento de motores de plantillas para crear vistas dinámicas y cómo ayudan a separar la lógica del negocio de la presentación en tus aplicaciones web.
- Aprovechamiento de las posibilidades de back-end como gestor de plantillas de cara a presentar al front- end frontales renderizados para una mayor velocidad de respuesta.
- Resolución de ejemplos prácticos de algunos de los motores de plantillas más populares en el ecosistema de Node.js y Express.js, como EJS, Handlebars y Pug.
- Manejo de motor de plantillas Handlebars para poder crear páginas web usando el servidor Express.
- Utilización de Handlebars para dinamizar un contenido en HTML y CSS estáticos, usando los datos que se lean de una API.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Comprensión del uso de distintos motores de plantillas.
- Concienciación de la importancia de una correcta implicación del equipo para lograr el resultado esperado.
05
AUTENTICACIÓN Y AUTORIZACIÓN
- OBJETIVO
- Dominar los mecanismos de autenticación y autorización en Node.js
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de:
- Sistemas de autenticación más usados con NodeJS.
- Sesiones y mecanismos de autorización.
- Funcionalidad de ruta y creación de tokens JWT.
- B.- Capacidades cognitivas y prácticas
- Automatización de la autenticación y autorización en node.js mediante Express.js
- Desarrollo de otros métodos de autenticación como los Magic Links.
- Capacitación de gestión de roles de usuario y manejar permisos para securizar el acceso y uso a los servicios.
- Aplicación de protección de una aplicación web para que solo las personas autorizadas puedan hacer uso de ella, así como a manejar dichos usuarios/as (crear, editar, etc.).
- Creación de una aplicación web completa a partir de un caso planteado.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Desarrollo de una visión estratégica para entender los mecanismos de autenticación y autorización en Node.js
- Comprensión del manejo de middleware para los procesos de autenticación (el proceso de verificar si la persona usuaria es quien dice que es) y autorización (ver si la persona usuaria tiene los permisos necesarios para acceder a un recurso).
- Habilidad para gestión de las herramientas que se utilizan para construir una API de Nodejs con autenticación.
06
DEBUGGING Y CALIDAD DEL CÓDIGO
- OBJETIVO
- Identificar y solucionar errores y problemas en las aplicaciones web utilizando herramientas de depuración y buenas prácticas.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de herramientas para depurar una aplicación NodeJS.
- B.- Capacidades cognitivas y prácticas
- Depuración de una aplicación NodeJS.
- Aplicación de tests para validar la funcionalidad del código.
- Capacitación para el desarrollo un código seguro y fácil de mantener, garantizando que este estándar de calidad se mantenga en el tiempo.
- Supervisión eficiente para ser capaz de detectar errores en tiempo de desarrollo antes de que el código llegue a producción.
- Aplicación de testeo y depuración de la aplicación web y creación de una solución eficaz a los errores que aparezcan.
- Desarrollo de código seguro y mantenible para un caso práctico dado.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Desarrollo de visión estratégica en cuanto al impacto de los errores en la estabilidad y el rendimiento de una aplicación.
- Capacidad de identificar, analizar y solucionar errores en el código de un programa.
- Implementar herramientas, consejos y buenas prácticas, podrás enfrentar los desafíos de la calidad del código de manera más efectiva.
- Capacidad de generación de pruebas unitarias y documentación de código para mejorar la calidad general de las aplicaciones.
07
MANEJO DE ERRORES
- OBJETIVO
- Identificar y manejar errores en tiempo de ejecución con eficacia.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de errores en JavaScript y NodeJS y Express.js.
- B.- Capacidades cognitivas y prácticas
- Dominación de diferentes formas de manejar posibles errores en la propia aplicación web.
- Predicción para cubrir escenarios con la finalidad de facilitar la comprensión de los errores técnicos.
- Comprensión del Seguimiento de la Pila (Stack Trace).
- Utilización de mecanismos de manejo de errores en JavaScript y NodeJS y Express.js.
- Monitorización de errores en las aplicaciones.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Comprensión del procedimiento de manejo de errores que verifica y responde a anormalidades en un programa.
- Capacidad analítica para saber identificar los errores básicos en JavaScript y también algunos poco frecuentes.
- Concienciación de la correcta implicación del equipo para lograr el resultado esperado y evitar errores en el desarrollo de aplicaciones.
08
SISTEMAS DE FICHEROS
- OBJETIVO
- Entender el módulo de gestión de ficheros de Node.js
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- A.-Conocimientos. Adquisición de conocimientos de módulo del Sistema de Archivos de Node.js
- B.- Capacidades cognitivas y prácticas
- Asunción y desarrollo de dependencias mediante módulos, así como manejo de forma óptima del sistema de archivos para tratamiento o como fuente de datos.
- Interacción con el sistema de ficheros usando NodeJS.
- Capacitación para el manejo de archivos en nuestro servidor web Express.
- Manipulación de archivos multimedia desde NodeJS usando FFMPEG.
- Utilización de ficheros con NodeJS, recepción y envío de archivos a los clientes de la propia aplicación web.
- Creación de una web app que permita crear y editar notas, guardando éstas como ficheros en el servidor.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Capacidad de identificación de la importancia de que trabajo con archivos y directorios.
- Comprensión de distintos métodos para crear y escribir en un archivo.
- Capacidad de organización de archivos y comunicación con los otros miembros del equipo.
Especialidad formativa