Skip to content

Fictizia/Master-en-Programacion-FullStack-con-JavaScript-y-Node.js_ed3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

615 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

shieldsIO shieldsIO shieldsIO

WideImg

JS, Node.js, Frontend, Backend, Firebase, Express, Patrones, HTML5_APIs, Asincronía, Websockets, testing

Aprende con este Máster en Programación FullStack con JavaScript y Node.js todo lo necesario para desarrollar cualquier tipo de proyecto interactivo.

Aprenderás todos sobre fundamentos y lógica de la programación, la manipulación dinámica del DOM y el desarrollo de aplicaciones interactivas usando AJAX. Tambien conocerán en profundidad el uso de patrones de diseño, control de versiones, testing y fundamentos de trabajo con Node.js lo que les permitirá integrarse en entornos de desarrollo modernos y eficientes.

A lo largo del Máster en Programación FullStack con JavaScript y Node.js también aprenderás todo lo necesario para crear aplicaciones que requieran de una base de datos ágil y en tiempo real con Firebase y la integración de servicios de terceros utilizando APIs, algo cada día más necesario actualmente.

También aprenderás a trabajar con APIs modernas para compartir datos con otros de una manera eficiente (AJAX server-side), el uso de la terminal, la asincronía y las peculiaridades propias de Node.js y el desarrollo de aplicaciones Back-End.

Como metodología de trabajo durante el curso, desarrollarás como prácticas troncales diversas aplicaciones web que te servirá además de repositorio de todo lo aprendido. El Máster se gestiona íntegramente a través de GitHub, lo que te permitirá desarrollar las practicas en un entorno colaborativo y acorde a tu labor posterior en tu puesto de trabajo.

Durante este Máster en Programación FullStack con JavaScript y Node.js, irás aprendiendo mediante el desarrollo de ejercicios prácticos orientados a proyectos reales. También desarrollarás dos proyectos personales con tutorías individualizadas con tu profesor Ulises Gascón. Además, contribuirás a proyectos Open Source reales y, al final del programa de estudios, crearás un proyecto FullStack personal para afianzar todos lo aprendido.

Sobre el Curso

  • Horario: Lunes, Miercoles y Viernes de 16h a 19h
  • Fechas: 1/10/18 - 02/07/19
  • Observaciones:
    • 11-12/10/18 Puente de la Hispanidad
    • 01-02/11/18 Puente de Todos los Santos
    • 09/11/2018 Fiesta de la Almudena
    • 05-07/12/18 Puente de la Constitución
    • 24/12/18 - 08/01/19 Navidad
    • 15-29/04/19 Semana Santa
    • 01-03/05/19 Puente Dia del trabajador + Dia de la Comunidad de Madrid
    • 15/05/2019 San Isidro

Teoría y Recursos

Fecha Teoría Recursos Contenido
01/10/18 Clase 1 Clase 1 Intro al Curso
03/10/18 Clase 2 Clase 2 Git/Github/Gitlab/Bitbucket
05/10/18 Clase 3 Clase 3 Pseudocodigo y bases de algoritmia + Definición de Proyecto I
08/10/18 Clase 4 Clase 4 Chrome DevTools
10/10/18 Clase 5 Clase 5 JSDocs, Comparadores, Tipos de datos, Modo Estricto, etc...
15/10/18 Clase 6 Clase 6 Condicionales: If...else, Switch y Operador ternario
17/10/18 Clase 7 Clase 7 Bucles: For, While, Do...while, Break & Continue
19/10/18 Clase 8 Clase 8 Números, Math y Fechas
22/10/18 Clase 9 Clase 9 Cadenas y Arrays
24/10/18 Clase 10 Clase 10 Objetos y Funciones
26/10/18 Clase 11 Clase 11 Práctica: Maquina Expendedora por consola
29/10/18 Clase 12 Clase 12 BOM y DOM I
31/10/18 Clase 13 Clase 13 BOM y DOM II: Manipulación y Frameworks
05/11/18 Clase 14 Clase 14 Eventos del DOM I
07/11/18 Clase 15 Clase 15 Práctica: Hacking Twitter
12/11/18 Clase 16 Clase 16 Ajax I: Ajax Básico
14/11/18 Clase 17 Clase 17 Ajax II: Ajax Avanzado y Seguridad
16/11/18 Clase 18 Clase 18 Ajax III: HTTP/2 & Fetch
19/11/18 Clase 19 Clase 19 Rendimiento, JSDocs, Guías de estilo y SEMVER
21/11/18 Clase 20 Clase 20 Live Coding: Github
23/11/18 Clase 21 Clase 21 Live Coding: Buenos días, Madrid!
26/11/18 Clase 22 Clase 22 Trabajo en el proyecto personal
28/11/18 Clase 23 Clase 23 Intro a JS Avanzado y definición de proyecto
30/11/18 Clase 24 Clase 24 Navegadores y conceptos avanzados de JS...
03/12/18 Clase 25 Clase 25 Entrevistas técnicas para JavaScript Developers
10/12/18 Clase 26 Clase 26 ECMA6, es7, es8, es9 I: Teoria I
12/12/18 Clase 27 Clase 27 ECMA6, es7, es8, es9 II: Teoria II
14/12/18 Clase 28 Clase 28 ECMA6, es7, es8, es9 III: Ejercicios I
17/12/18 Clase 29 Clase 29 ECMA6, es7, es8, es9 IV: Ejercicios II
19/12/18 Clase 30 Clase 30 Router Frontend + templates
21/12/18 Clase 31 Clase 31 Paradigmas: Programación orientada a Objetos
09/01/18 Clase 32 Clase 32 Patrones en JS I: Antipatrones
11/01/18 Clase 33 Clase 33 HTML5: Geo y mapas
14/01/19 Clase 34 Clase 34 Regex I: Teoría
16/01/19 Clase 35 Clase 35 Regex II: Ejercicios
21/01/19 Clase 36 Clase 36 HTML5: Programación creativa con Canvas, Gráficos y 3D
23/01/19 Clase 37 Clase 37 Paradigmas: Programación Funcional
25/01/19 Clase 38 Clase 38 HTML5: LocalStorage y contentEditor
28/01/19 Clase 39 Clase 39 Patrones en JS II: Metaprogramación y Patrones
30/01/19 Clase 40 Clase 40 HTML5: Offline
01/02/19 Clase 41 Clase 41 HTML5: WebWorkers, Blob y FileSystem
04/02/19 Clase 42 Clase 42 HTML5: PWA
06/02/19 Clase 43 Clase 43 Firebase I: Intro + Realtime Database
11/02/19 Clase 44 Clase 44 Firebase I: Autenticación y Hosting
13/02/19 Clase 45 Clase 45 Firebase I: Cloud Storage
15/02/19 Clase 46 Clase 46 Arquitectura en JS: Presentation Patters
18/02/19 Clase 47 Clase 47 Patrones de JS IV: Algoritmia y Estructuras de datos
20/02/19 Clase 48 Clase 48 Nodejs: Funcionamiento, ecosistema y ejemplos
22/02/19 Clase 49 Clase 49 Nodejs: Modularización y Librerías Core
25/02/19 Clase 50 Clase 50 NPM, NPX, YARN y Bower
27/02/19 Clase 51 Clase 51 Grunt y Gulp
01/03/19 Clase 52 Clase 52 Gulp: Ejercicios
04/03/19 Clase 53 Clase 53 Paradigmas: Programación Reactiva
06/03/19 Clase 54 Clase 54 NPM Scripts
08/03/19 Clase 55 clase 55 Shell Scripting: Ejercicios
11/03/19 Clase 56 Clase 56 Shell Scripting
13/03/19 Clase 57 Clase 57 JavaScript Modular: AMD, Requirejs y Browserify
18/03/19 Clase 58 Clase 58 Yeoman I
20/03/19 Clase 59 Clase 59 Yeoman II
22/03/19 Clase 60 Clase 60 Frameworks I: Anatomía y funcionalidades
25/03/19 Clase 61 Clase 61 Frameworks II: Ecosistema, soluciones y contextualización
27/03/19 Clase 62 Clase 62 WebSockets: Fundamentos`
29/03/19 Clase 63 Clase 63 Intro al backend + def. PFM
01/04/19 Clase 64 Clase 64 Frameworks III: Angular con Jon Rojí
03/04/19 Clase 65 Clase 65 Frameworks IV: React con Javier Vidal
05/04/19 Clase 66 Clase 66 Frameworks V: Vue con Rubén Valseca
08/04/19 Clase 67 Clase 67 Express I: Básicos y enrutamiento
10/04/19 Clase 68 Clase 68 Express II: Server Render y plantillas
12/04/19 Clase 69 Clase 69 Express III: Middleware y Patrones
22/04/19 Clase 70 Clase 70 Resolviendo Ejercicios y repasando
24/04/19 Clase 71 Clase 71 Express IV: Mas allá de Express
26/04/19 Clase 72 Clase 72 Resolviendo Ejercicios y repasando
29/04/19 Clase 73 Clase 73 WebSockets Backend y MQTT
06/05/19 Clase 74 Clase 74 Nodejs: Conceptos Avanzados de Core (Child Process, C/C++ Addons, Cluster...)
08/05/19 Clase 75 Clase 75 Hablemos de Seguridad Web
10/05/19 Clase 76 Clase 76 Arquitectura (Monolito, Microservicios, serverless...)
13/05/19 Clase 77 Clase 77 Firebase II: Google Cloud Functions
17/05/19 Clase 78 Clase 78 Firebase II: Ejercicios de Cloud Functions
20/05/19 Clase 79 Clase 79 Firebase II: Cloud Messaging
27/05/19 Clase 80 Clase 80 Bases de datos: Fundamentos y GoblinDB
29/05/19 Clase 81 Clase 81 Bases de datos: Relacionales I
31/05/19 Clase 82 Clase 82 Bases de datos: Relacionales II
03/06/19 Clase 83 Clase 83 Bases de datos: No-relacionales I
05/06/19 Clase 84 Clase 84 Bases de datos: No-relacionales II
07/06/19 Clase 85 Clase 85 Firebase III: Cloud Firestore
10/06/19 Clase 86 Clase 86 Scraping con Puppeteer
12/06/19 Clase 87 Clase 87 CLI con Nodejs
14/06/19 Clase 88 Clase 88 Node funcionando con PM2, Nodemon, etc...
17/06/19 Clase 89 Clase 89 Deploy en Cloud
19/06/19 Clase 90 Clase 90 Testing: Fundamentos
21/06/19 Clase 91 Clase 91 Testing: Unit Testing
22/06/19 Saturday Coding I Saturday Coding II Live Coding: Zowiki
24/06/19 Clase 92 Clase 92 Testing: E2E Testing & Específicos
26/06/19 Clase 93 Clase 93 Virtualización con Docker y Kubernetes
28/06/19 Clase 94 Clase 94 DevOps: CI y CD
29/06/19 Saturday Coding II Saturday Coding II Live Coding: Tor y la Deep Web
01/07/19 Clase 95 Clase 95 Entrevistas

Bases lógicas de la programación

  • Aprende a pensar como un/a programador/a
  • Algoritmos simples
  • Anatomía de un programa informático
  • Pseudocódigo

Fundamentos de JavaScript

  • Variables
  • Condicionales
  • Tipos de dato
  • Bucles
  • Funciones
  • Arrays
  • Objetos

Trabajando con control de versiones

  • Git
  • GitHub, Gitlab y Bitbucket
  • Pull Requests
  • Gestión de issues y proyectos
  • Trabajando con commits
  • Trabajando con ramas
  • Contribuyendo a repositorios de terceros

Gestión del DOM y Eventos

  • Agregar y eliminar elementos
  • Modificar atributos y contenido
  • Modificación de CSS
  • Getters y Setters
  • El objeto window
  • El objeto document
  • El objeto navigator
  • Gestión de eventos de usuario

Flujos de trabajo eficientes

  • Documentación con JSDoc
  • La consola
  • Chrome DevTools
  • Depuración de código
  • Versionado semántico (SEMVER)
  • Fundamentos de metodologías ágiles
  • Fundamentos de DevOps

Dominando AJAX

  • Verbos HTTP (GET, POST, DELETE…)
  • Modificación de cabeceras HTTP
  • JSON complejos
  • JSONP
  • XMLHttpRequest y Fetch
  • Recurrencia
  • Gestión de CORS y Proxies
  • Seguridad
  • Uso de clientes (Insomnia, Postman…)
  • Manejando texto plano, CSV y XML

Trabajando con motores de plantillas (Handelbars, Moustache, EJS…)

HTML5 APIs

  • Soporte offline
  • Geolocalización y mapas
  • Gráficas y visualización de datos
  • WebWorkers y Blob API

Progressive Web Apps (PWA)

Filosofías NoBackend/Serverless

Asincronía

  • Promesas
  • Callbacks
  • Async/Await
  • Colas de ejecución

Programación orientada a objetos (POO con prototipos)

Fundamentos de la programación funcional

Programación orientada a Eventos

RegExp (expresiones regulares)

Patrones (Singleton, Factory, Prototype, Iterator…)

Profundizando en algoritmia

Metaprogramación

El «nuevo» JavaScript (ECMA&, ES7, ES8, ES9…)

Gestión avanzada de APIs desde cliente

Desarrollando tus propias librerías para Frontend

Gestión de dependencias con AMD, RequireJS y Browserify

Firebase

  • Autenticación
  • Realtime Database
  • Cloud Storage
  • Hosting
  • Cloud Firestore
  • Cloud Functions
  • Predictions
  • Cloud Messaging
  • Dynamic Links

Testing en JavaScript y Node.js

  • Unit Testing (Mocha, Chai, Jasmine, Karma)
  • E2E (Puppeteer, Selenium)

Fundamentos de los frameworks más importantes de JavaScript

  • React
  • Angular
  • Vue.JS

Dominando Node.js

  • Manejando la terminal
  • Modularización del código
  • Módulos propios de Node.js (fs, http, url, cluster…)
  • Extendiendo funcionalidades con módulos de terceros
  • NPM, YARN y gestión de dependencias
  • Desarrollo de librerías isomórficas

Flujos de trabajo Front-end automatizados con Node.js

  • Automatización de tareas con Grunt, Gulp y NPM Scripts
  • Creación de proyectos escalables con Yeoman
  • Flujos eficientes con Webpack

WebSockets

  • El paradigma del tiempo real
  • Librerías WebSocket, ws, uWs…

Arquitecturas de sistemas

  • los problemas de escalabilidad
  • Arquitecturas monolíticas
  • Arquitecturas de microservicios
  • Serverless/Nobackend
  • NGINX y Apache
  • Gestión de caché
  • Utilización de CDNs

Fundamentos de Cloud

  • Software as a Service (SaaS)
  • Platform as a Service (PaaS)
  • Infraestructure as a Service (IaaS)

Desplegando en Cloud

  • Extendiendo funcionalidades con servicios Cloud
    • DialogFlow
    • Mensajería
  • Conociendo y diferenciando los proveedores principales
    • IBM Bluemix
    • Microsoft Azure
    • Amazon Web Services
    • Google Cloud
    • Heroku
    • Digital Ocean
    • OVH
  • Utilidades (PM2, Nodemon…)

Fundamentos de Docker y Kubernetes

Creación de aplicaciones CLI

  • Reusabilidad
  • Gestión de la información
  • Soporte multiplataforma

Scraping

Bases de datos

  • MySQL
  • MongoDB
  • El teorema CAP
  • Fundamentos de los modelos de datos
    • Esquemas relacionales (MySQL, Postgres…)
  • Clave/Valor (Redis, MemcacheDB…)
  • Columnar (Cassandra, BigTable…)
  • Documentales ( MongoDB, SimpleDB, CouchDB)
  • Grafos (Neo4j…)

Back-end con Node.js

  • Protocolos y especificaciones en el Back-end
  • Express
    • Manejo de rutas
    • Middleware
    • Arquitectura de APIs
    • MVC en Back-end
    • Patrones eficientes
  • Librerías para extender la funcionalidad de Express
  • Motores de plantillas para Back-end
  • Desarrollo de tus propias librerías para Back-end
  • Fundamentos de Seguridad en Back-end

About

FICTIZIA » Máster en Programación FullStack con JavaScript y Node.js — 3ª Edición

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7