Introducción al desarrollo de aplicaciones web con Javascript (ECMAScript 6)
FCyT
ACERCA DE ESTE CURSO
El curso está diseñado para proporcionar conceptos básicos que brindarán a la persona participante la posibilidad de profundizar conocimiento en diferentes tecnologías y arquitecturas de Javascript, en su estándar ECMAScript 6.
Se propone un enfoque dinámico y participativo, con un gran segmento de prácticas, en el cual se resuelvan problemas a través de algoritmos. El objetivo final del curso es proporcionar herramientas y adquirir las habilidades que puedan ser aplicadas para desarrollar una aplicación web, que procese y persista información, de acuerdo a los estándares actuales.
DURACIÓN
El curso propuesto tendrá una carga horaria total de sesenta (60) horas reloj.
Las mismas se distribuyen de la siguiente manera:
cuarenta (40) horas en encuentros sincrónicos, divididos en veinte (20) encuentros de dos (2) horas,
dieciséis (16) horas de ejercitaciones prácticas, y
cuatro (4) horas se dedicarán a la concreción del trabajo práctico final.
MODALIDAD
A distancia combinando clases en vivo y actividades prácticas en el Aula Virtual
CUPOS LIMITADOS
CONTENIDOS
Módulo 1 - Introducción. Manuales, bibliografía y especificaciones. IDEs y consola de desarrollador.
Módulo 2 - Fundamentos: Hello Hello! con JS. Estructura del código. Variables. Tipo de Datos. Interacciones con el usuario a través de alert, prompt y confirm. Conversiones de tipo. Operadores básicos. Comparaciones. Condicionales. Operadores lógicos. Estructuras de iteración. Funciones.
Módulo 3 - Calidad del código: Manejo de errores y debugging. Indentación y buenas prácticas. Comentarios. Introducción al testeo de código automático a través de Mocha.
Módulo 4 - Objetos: Objetos. Referencias y copias. Garbage Collection. Métodos de los objetos. Constructor. Tipos de símbolos. Conversión de objeto a primitivo. Propiedades, descriptores y flags de los objetos. Getters y Setters.
Módulo 5 - Tipos de datos: Métodos primitivos. Números. Cadenas. Matrices y métodos de matrices. Iterables. Map y Set. WeakMap y WeakSet. Manejo de fechas. JSON y métodos JSON.
Módulo 6 - Manejo avanzado de funciones: Patron recursión. Parámetros. Variables y ambiente de variables. Objetos globales. Scheduling. Decorators. Función flecha.
Módulo 7 - Prototipos, herencia: Herencia de prototipos. F.prototype. Prototipos nativos. Métodos de prototipo. _proto_
Módulo 8 - Clases: Sintaxis básica. Herencia de clases. Propiedades estáticas y métodos. Métodos y propiedades privadas y protegidas. Chequeo de clases.
Módulo 9 - Manejo de errores: Bloque try…catch. Errores genéricos y customizables.
Módulo 10 - Promesas, async/await: Promesas y callbacks. Encadenado de promesas. Manejo de errores en promesas. Promise API. Microtareas. Uso de async/await.
Módulo 11 - DOM: Especificaciones. DOM Tree. Uso de getElement y querySelector. Propiedades de los nodos. Modificación de un documento a través del DOM. Clases y estilos.
Módulo 12 - Eventos: Eventos del navegador. Delegación de eventos. Eventos del mouse. Drag’n’Drop. Pointers. Eventos del teclado.
Módulo 13 - Formularios: Propiedades y métodos. Focus. Eventos.
Módulo 14 - Persistencia: Uso de cookies. LocalStorage. SessionStorage. IndexedDB
Módulo 15 - Network requests: Fetch. FormData. Objetos URL. XMLHttpRequest.
DESCARGÁ EL PROGRAMA DEL CURSO
A QUIÉN ESTÁ DIRIGIDO
Las personas hacia las que se orienta este curso son estudiantes avanzados y graduados de carreras afines y vinculadas al desarrollo de software, como así también público general interesado en la temática.
No se requieren saberes previos específicos, pero si es necesario contar con un ordenador con las siguientes prestaciones mínimas:
REQUISITOS
Se requiere contar con PC o notebook, con las siguientes características mínimas:
Sistema operativo Windows 7 o Windows 10 en versiones de 64 bits.
Tarjeta de video de 512 mb compatible con DirectX 10 o versiones posteriores.
8 GB de RAM.
DÍAS Y HORARIO DE CURSADO
Viernes de 16 a 18 h
Gastón López
Técnico Universitario en Tecnología de la Información. Full Stack developer. Administrador de Sistemas de Computación y Telecomunicaciones.
EN VIVO