Descripción General
Este curso busca que el alumno aprenda a desarrollar programas o funcionalidades que se ejecuten en el navegador como parte de sus aplicaciones web.
Se desarrollan habilidades cómo:
- Uso de los objetos que provee JavaScript.
- Comprensión de la filosofía de programación.
- Implementación de mecánicas orientadas a objetos.
- Manipulación de los elementos visuales de una interfaz gráfica en Html y CSS por medio de programación.
- Desarrollo de llamados asíncronos (AJAX) a apis Web.
- Comprensión de términos cómo:
prototype, cerradura, funciones lambda, objetos JavaScript, DOM, Element, Document, Style, Proxy, JSon, AJAX, etc.
Dirigido a:
- Desarrolladores Java o .NET interesados en programar aplicaciones web de una sola página (SPA)
- Gerentes o líderes de proyecto que supervisan desarrollos en Java o .NET
- Futuros arquitectos de software
Objetivo
Que el alumno pueda desarrollar aplicaciones que exploten las funcionalidades ofrecidas por los navegadores usando JavaScript.
Se recomienda cuando:
El interesado debe desarrollar aplicaciones de una sola página (SPA) o aplicaciones web que manipulan páginas web.
Contenido: Temas principales
- Introducción. Se revisa la historia, antecedentes y alcances actuales de JavaScript, incluyendo su nuevo rol en back-ends.
- Variables y Tipos de datos.
- Tipeo dinámico de datos.
- Valores especiales.
- Tipos de objetos y datos primitivos.
- Definición de literales de diferentes tipos.
- Ámbitos.
- Operadores. En este capítulo se abordan los operadores existentes para: hacer operaciones aritméticas, construir condiciones, hacer operaciones a nivel binario y checar el tipo al que pertenece una variable.
- Estructuras de control de flujo. Se estudian las construcciones para: diseñar condiciones, definir ciclos de iteración en distintos estilos y hacer rompimientos que modifican la ejecución habitual de ciclos y condiciones.
- Funciones. Son objetos con propiedades especiales que pueden ser asignadas a variables y también ser usadas como parámetros de invocación de otras funciones. En este capítulo se estudian:
- Definición y reglas asociadas
- Ámbitos
- Recursividad
- Invocación desde html
- Funciones anónimas
- Declaración vs Ejecución
- Arreglos. Los arreglos son objetos JavaScript que ofrecen métodos muy útiles y una mecánica extendida de uso que permite hacer cadenas de procesamiento muy poderosas. En este capítulo:
- Definición e inicialización
- Operaciones básicas
- Iteración: reglas y variantes
- Objeto Array
- Métodos
- Apilamiento de métodos.
- DOM. Cuando se ejecuta JavaScript en un navegador se tiene acceso a los elementos que forman el documento html que es cargado e interpretado. Esto permite programar dinámicamente interfaces de usuario: desplegar controles de entrada, leer valores capturados por el usuario, activar botones, cambiar estilo y un largo etcétera. En este módulo:
- Especificaciones y APIs involucradas.
- El objeto global window.
- El objeto Document, sus interfaces y operaciones derivadas de las distintas especificaciones.
- El árbol DOM y su papel en el navegador.
- Manipulación de elementos y sus propiedades en el árbol DOM: búsquedas, creación, actualización y eliminación.
- Eventos de Interfaz de Usuario. Los navegadores usan una arquitectura particular para procesar eventos de la interfaz de usuario tales como el clic en un botón. En este capítulo:
- Arquitectura de eventos de interfaz de usuario de acuerdo a la especificación HTML y sub-especificaciones.
- Mecánicas de suscripción.
- El objeto Event.
- Eventos del ratón.
- Eventos del teclado.
- Otros eventos relevantes.
- Temporizadores. Los temporizadores son la base de la programación asíncrona en un navegador. En este capítulo se aprende a entenderlos y a utilizarlos.
- Objetos en JavaScript.
- Notación literal
- Notación JSon
- Instanciación
- Propiedades con funcionamiento: métodos
- Uso y significado de la referencia this
- Comunicación con Back-Ends usando Ajax.
- Roles de Front-End y Back-End
- Qué es Ajax
- El Rendereo parcial
- El objeto XMLHttpRequest y el protocolo Http
- Uso de formatos de datos en peticiones y respuestas
- Temas extendidos
- El objeto estándar String y sus métodos principales
- El objeto estándar Date y sus métodos principales
- El objeto estándar Math
- Uso de expresiones regulares
- Funciones lambda
- Manejo de excepciones
Duración
40 horas
Prerrequisitos
Deseable Arquitectura Web con Jakarta Enterprise Edition (CTJEE01)