Estructura del Curso de Node.js con Express.js en CódigoK Escuela de Programación.
El entorno de ejecución Node.js tiene cualidades que lo hacen único, soporta múltiples conexiones simultáneas en un servidor, maneja grandes cantidades de datos de manera rápida y eficiente y consume muy poco recursos.
Todo ello lo convierte en el preferido cuando se trata de aplicaciones de IoT (Internet of Things).
Posee una importante comunidad de desarrolladores, es código abierto y dispone de gran cantidad de paquetes con funcionalidades extra.
Por estos motivos, grandes compañías como Paypal, Uber, Netflix, Linkedin e incluso la NASA también los han seleccionado como base de, al menos, parte de su
software.
4. 4
Vivimos una era sin precendentes para el mundo
digital. El despliegue de 5G aún durará varios años
más, sin embargo, sus cimientos ya se van asentando y
suponen una nueva revolución para el ecosistema de las
telecomunicaciones.
Latecnología5G permitirá,entreotrasmuchascosas,una
rápida evolución de los servicios basados en el Internet
de las cosas (IoT) como los vehículos conectados o las
casas conectadas.
<INTRODUCCIÓN>
5. 5
La Realidad Aumentada (AR) y la Realidad Virtual (VR)
han experimentado pequeños aunque significativos
crecimientosenañosanteriores.Cadavezmásdispositivos
de Realidad Virtual inundan el mercado y no tardaremos
en dar con la solución ideal que permitirá el ya esperado
boom de ambas tecnologías.
Tecnologías más nuevas como la robótica y blockchain
esperan también su momento en el prometedor horizonte
de las telecomunicaciones.
Tras los servicios que permitirán a los usuarios disfrutar
de todos estos avances tecnológicos a través del móvil,
del PC o de un dispositivo IoT, encontramos el Desarrollo
Web.
El W3C trabaja duro para definir las funcionalidades que,
incorporadas de forma nativa a nuestros navegadores,
permitirán a los desarrolladores web construir complejas
soluciones de forma muy sencilla.
6. 6
Algunasdeestasfuncionalidades,comolasquepermiten
el desarrollo de aplicaciones web que manejan datos
en tiempo real (WebSockets) o permiten mantener una
videoconferencia con otro usuario sin utilizar ningún
software adicional (webRTC), ya se encuentran en
un estado muy maduro y han sido incorporadas en
numerosos servicios.
Otras, como la que permite averiguar la intensidad de la
luz ambiental o acceder a dispositivos de realidad virtual,
se encuentran aún en definición o en desarrollo por parte
de los fabricantes de los principales navegadores, pero
no tardarán mucho en madurar y ponerse a disposición
de los programadores web.
Los lenguajes de Programación, frameworks y
herramientas utilizadas en este entorno son muy
cambiantes. Evolucionan para adaptarse a los nuevos
requisitos de los usuarios, al entorno y a las nuevas
tecnologías, con objeto de permitir a los programadores
construir software cada vez de mayor calidad y en menor
tiempo.
7. 7
Prácticamente, nace un framework o nuevo lenguaje
cada día y, es por esto, por lo que las instituciones
académicas clásicas tienen muy difícil mantener
actualizadas las materias impartidas. El entorno del
programador evoluciona a un ritmo vertiginoso y esto
provoca que cada vez más recién graduados tengan
que prepararse para satisfacer las demandas de los
puestos de trabajo nada más finalizan sus estudios.
Siendo conscientes de esta realidad y de nuestra
responsabilidad como Centro Educativo, CódigoK
ha diseñado planes de estudios completamente
adaptados a las demandas del mercado, diseñados
por programadores en activo, con el objetivo único de
aumentar la empleabilidad de sus alumnos. Enseñar
a construir código limpio, mantenible, usable y de
calidad y enseñar a pensar en el trabajo en equipo
como el verdadero motor de todo proyecto software,
eslaverdaderapiedraangulardecadaunodenuestros
planes de estudios.
9. 9 9
<OFERTA FORMATIVA>
La oferta formativa de CódigoK se orienta a la formación
enlasmateriasnecesariasparaeldesempeñoprofesional
en calidad de desarrollador web junior Front End o Back
End. Dentro de Back End, damos la opción al alumno de
formarse en el lenguaje de servidor de su elección.
Para todos aquellos alumnos que buscan complementar
su formación en alguna materia concreta, disponemos
de la opción de cursar individualmente la formación de
su interés.
10. Curso Superior
de Desarrollo
Front End
124 HORAS 124 HORAS 124 HORAS 124 HORAS 124 HORAS 124 HORAS
Curso Superior de
Desarrollo Back End
Java/Spring5
Curso Superior de
Desarrollo Back End
Node.js/Express.js
Curso Superior de
Desarrollo Back End
Phyton/Django
Curso Superior de
Desarrollo Back End
PHP/Laravel
Curso Superior de
Desarrollo Back End
Ruby on Rails
<ITINERARIOS O TRACKS>
DISEÑO
RESPONSIVE
12. 12
En un mercado laboral cada vez más competitivo, la
verdadera fortaleza de las empresas se basa en ser
capaces de atraer y retener talento para conseguir
diferenciarse de su competencia. Sin embargo, la brecha
existente entre las necesidades empresariales y la oferta
existente en el mercado laboral es cada vez mayor y se
hace más latente cuando hablamos de profesionales
STEM (Science, Technology, Engineering & Mathematics)
En los últimos siete años, el número de estudiantes
matriculadosencarrerasSTEMenEspañahadescendido
drásticamente, sin hablar de la preocupante brecha de
género que existe en estas carreras donde solo el 12%
de los matriculados son mujeres.
A pesar de las advertencias y recomendaciones de la
Agenda Digital 2020 para corregir esta situación, España
parece encontrase aún dormida.
Nuestra MISIÓN, nuestra verdadera razón de ser, tiene
por objeto crear oportunidades de empleo a través de
una formación de calidad, adaptada 100% al mercado
laboral, que permita al alumno su inserción laboral, así
como, mejorar y crecer profesionalmente.
Siendo fieles a nuestra MISIÓN, está en nuestro ánimo
apoyar a los colectivos de desempleados, jóvenes y
mujeres,losgruposconmásnecesidaddeoportunidades
laborales, con una beca para cualquiera de nuestros
planes de estudios del 10% del coste total.
<BECAS DE FORMACIÓN>
13. 1313 13
<BONIFICACIÓN EMPRESAS>
La formación ayuda a las empresas a incrementar su
competitividad desarrollando las competencias digitales
de sus empleados.
Por ello disponen de una ayuda económica efectiva
mediante bonificaciones en las cotizaciones a la
Seguridad Social a través de la Fundación Estatal para la
Formación en el Empleo (FUNDAE).
Con objeto de facilitar la labor a las empresas,
ponemos a su disposición nuestros servicios como
entidad Organizadora de la Gestión y Tramitación de
nuestras formaciones para su bonificación de manera
completamente gratuita.
15. 15
El entorno de ejecución Node.js tiene cualidades que lo
hacen único, soporta múltiples conexiones simultáneas
en un servidor, maneja grandes cantidades de datos de
manerarápidayeficienteyconsumemuypocorecursos.
Todo ello lo convierte en el preferido cuando se trata de
aplicaciones de IoT (Internet of Things).
Posee una importante comunidad de desarrolladores, es
código abierto y dispone de gran cantidad de paquetes
con funcionalidades extra.
Por estos motivos, grandes compañías como Paypal,
Uber, Netflix, Linkedin e incluso la NASA también los
han seleccionado como base de, al menos, parte de su
software.
<CURSO SUPERIOR BACK-END>
<NODE - EXPRESS>
17. 17
<MÓDULO-1>
<MONGODB>
1) Introducción
Bases de datos relacionales y no relacionales.
¿Qué es MongoDB y cuándo usarlo?
2) Instalación y Herramientas
Instalación
Mongo shell y Roboto 3T
3) Modelado de datos
Entidad y relación
Modelado de datos
Colecciones y documentos
Tipos de datos
Schemas y validaciones
4) Operaciones CRUD
Insert
Find
Update
Delete
5) Indexación
Índices simples y compuestos
Creación de índices
Utilización de índices
6) Backup
Exportación
Importación
18. 18
<MÓDULO-2>
<DESARROLLO DE WEB APPS CON NODE Y EXPRESS>
1) Instalación
¿Qué es Node.js y cuándo usarlo?
Instalación
2) Entorno de Desarrollo
Atom
Nodemon
Esrtuctura de un proyecto
Buenas prácticas
3) Módulos y dependencias
Construir módulos simples
Instalación de paquetes con npm
4) Asincronía
Event Loop
Programación asícrona
Callbacks
Librería async
5) Gestión de ficheros
Crear ficheros
Leer ficheros
Escribir en ficheros
6) Express.js
Objectos reques y response
Encabezados HTTP
Leer parámetros de una ruta
Routing y middlewares
Layouts
Cookies
7) Conectar con una BBDD MongoDB
Mongoose
Schemas
Validaciones
8) Gestión de usuarios
Crear nuevos usuarios
Cifrado de claves
Login de usuarios
Gestión de sesiones
9) Producción
Introducción a Git
Consola Unix
Desplegar en Heroku
Diseño de tests
Cypress.io
19. 19
<MÓDULO-3>
<DESARROLLO DE APIs RESTFUL CON NODE Y EXPRESS>
1. ¿Qué es una API?
2. Servidores e Internet
1. Estructura de una petición HTTP
2. Introducción a las acciones HTTP
I. GET
II. POST
III. PUT/PATCH
IV. DELETE
3. Códigos de estado en HTTP REST
4. Autenticación y seguridad
1. ¿Por qué es necesaria la autenticación?
2. Autenticación básica
3. JSON Web Token
4. API Key & Secret
5. OAuth 2.0
5. Diseño de una API REST
1. Uniforme
2. Misma acción → Mismo resultado
3. Peticiones Stateless / Sin estado
4. Basado en recursos
5. Formato de respuesta
I. JSON
II. XML
6. Envío de parámetros
I. En la URL
II. En el cuerpo
7. Paginación en listados
6. Implementación de una API Rest en Node.js
1. Probar la API (Postman, Swagger)
2. Mensajes de error
3. Ejemplos de API’s
7. Documentación (HTML, Swagger, Slate)
21. 21
<PROFESOR DEL CURSO>
Esther Gómez
Ingeniero Superior en Telecomunicaciones y Máster en
Sistemas de Información por la Universidad Politécnica
de Madrid.
Más de 20 años de experiencia en Gestión de Proyectos
TIC y Desarrollo Software (Vodafone, Microelectrónica
Española).
Fundadora de Kibukita, Espacio Digital y CódigoK.
DesarrolladorFullStackconmásde3añosdeexperiencia
en Node.js y MongoDB
2121
22. 22
Jesús de la Plaza
Diseñador y desarrollador
freelance desde el año 2000.
Elite author en Themeforest
y Codecanyon desde el 2013.
Dirección de arte y desarrollo
web para varios clientes, entre
ellos: Telefónica, Endesa, Bankia, InterContinental
Hotels, Pryconsa, Volkswagen...
Experto en desarrollo Front-End (HTML5, JS, CSS,
PHP).
<NUESTROS PROFESORES>
Pedro Camacho
Licenciado en Informática por
la Universidad Politécnica de
Madrid con más de 12 años
de experiencia en el mundo
del Desarrollo y los Sistemas
Informáticos.
Profesor de Programación desde 2009 en U-TAD y
la Universidad Europea de Madrid, especializado en
Java.
23. 23
José M. Gigado
Ingeniero de software senior
en Buffer, con más de 10 años
deexperiencia.Haco-fundado
una consultora de software y
trabajado en muchas empre-
sas del sector con múltiples
tecnologías (PHP, Scala, Ruby, JS, Go, Mongo, MySQL).
Titulado en Ingeniería Superior en Informática por la
Universidad Rey Juan Carlos.
José Ángel Jiménez
Ingeniero de Telecomuni-
cación especialidad Elec-
trónica y Bioingeniería por la
Universidad Politécnica de
Madrid.
Amplia experiencia en gestión, diseño, arquitectura y
desarrollo de aplicaciones software y Sistemas de In-
formación. Más de 10 años de experiencia en teleco-
municaciones (Airtel, Vodafone España, France Tele-
com).
Socio fundador de Anneo Technologies (2011) y Mou-
se4all (2016).
<NUESTROS PROFESORES>
24. 24
Carlos Muñoz
Ingeniero de software senior
enMonday,conmásde9años
de experiencia. Ha co-fun-
dado una consultora de de-
sarrollo de aplicaciones web
y trabajado en empresas del
sector con múltiples tecnologías (Ruby, Python, PHP,
JS, PostgreSQL, MySQL).
Titulado en Ingeniería Superior en Informática por la
Universidad Politécnica de Madrid.
<NUESTROS PROFESORES>
Esther Gómez
Ingeniero Superior en Tel-
ecomunicaciones y Máster
en Sistemas de Información
por la Universidad Politécnica
de Madrid. Más de 20 años
de experiencia en Gestión de
Proyectos TIC y Desarrollo Software (Vodafone, Mi-
croelectrónica Española).
Fundadora de Kibukita, Espacio Digital y CódigoK.
Desarrollador FullStack con más de 3 años de experi-
encia en Node.js y MongoDB.
25. Aulas de Formación:
Boadilla del Monte
Calle Victoria Eugenia de Battenberg, 10
Madrid, España
Pozuelo de Alarcón
Calle San Juan de la Cruz, 2
Madrid, EspañaEscuela de Programación
26. Avda. Isabel de Farnesio 34 Local 3
Boadilla del Monte, Madrid
hola@codigok.com / 91.005.25.02
www.codigok.com