Resumen por bloques del módulo
RA1: Selecciona las arquitecturas y tecnologías de programación sobre clientes Web, identificando y analizando las capacidades y características de cada una.
Fundamentos de la Ejecución Web: Cliente vs. Servidor. Esta unidad explora los modelos fundamentales de ejecución de código en aplicaciones web, diferenciando claramente entre el lado del cliente y el lado del servidor. Se analizan sus roles, ventajas, desventajas y cómo interactúan para construir una experiencia web completa.
El Navegador Web como Plataforma de Ejecución. Esta unidad detalla las capacidades internas de los navegadores web, explicando cómo interpretan y ejecutan el código del lado del cliente. Se cubren los componentes clave como el motor JavaScript, el DOM y el BOM, y cómo estos permiten la interactividad y manipulación de la página.
Lenguajes de Programación para Clientes Web: Panorama y Particularidades del Scripting. Esta unidad identifica y caracteriza los principales lenguajes relacionados con la programación de clientes Web, situando a JavaScript como estándar dominante junto a alternativas históricas y actuales (VBScript, Java Applets, ActionScript, TypeScript, CoffeeScript, WebAssembly). A partir de ahí, se profundiza en las particularidades de JavaScript como lenguaje de guiones (scripting), comparando sus ventajas y desventajas frente a la programación tradicional compilada.
Integración de Lenguajes y Herramientas para el Desarrollo Cliente. Esta unidad explora cómo los lenguajes de marcas (HTML, CSS) se integran con JavaScript para construir interfaces web dinámicas. Además, se identifican y evalúan las herramientas esenciales que un desarrollador utiliza para programar, depurar y optimizar el código del lado del cliente.
RA2: Escribe sentencias simples, aplicando la sintaxis del lenguaje y verificando su ejecución sobre navegadores Web.
Fundamentos de la Programación Cliente y Configuración del Entorno. Esta unidad introduce la programación en el lado del cliente, explicando su propósito y la elección de JavaScript como lenguaje estándar. Se detalla la configuración de un entorno de desarrollo básico para escribir, ejecutar y depurar código en navegadores web.
Variables, Tipos de Datos y Operadores en JavaScript. Esta unidad explora cómo declarar y utilizar variables en JavaScript, los diferentes tipos de datos que pueden almacenar y los operadores disponibles para manipular esos datos. Se enfatiza la importancia del ámbito de las variables y las peculiaridades de las conversiones de tipo.
Mecanismos de Decisión: Control de Flujo Condicional. Esta unidad se centra en los mecanismos de decisión en JavaScript, como las sentencias `if/else` y `switch`, que permiten ejecutar bloques de código de forma condicional. Se explica cómo estructurar el código para responder a diferentes situaciones y se enfatiza la importancia de la lógica booleana.
Estructuras de Bucle: Repetición de Sentencias. Esta unidad aborda las estructuras de bucle en JavaScript, como `for`, `while` y `do...while`, que permiten ejecutar un bloque de código repetidamente. Se explica cómo controlar la iteración y se introducen las sentencias `break` y `continue` para modificar el flujo de los bucles.
RA3: Escribe código, identificando y aplicando las funcionalidades aportadas por los objetos predefinidos del lenguaje.
Objetos Predefinidos del Lenguaje JavaScript: Fundamentos y Uso. Esta unidad introduce los objetos predefinidos fundamentales de JavaScript, como String, Number, Boolean, Array, Date y Math, explicando su propósito y cómo sus propiedades y métodos facilitan la manipulación de datos y la lógica de programación. Se enfatiza su aplicación práctica en el desarrollo web.
Interacción con el Navegador y el Documento: Objetos Window y Document (DOM). Esta unidad explora los objetos `window` y `document`, pilares de la interacción JavaScript con el navegador y el contenido HTML. Se detalla cómo acceder a elementos del DOM, modificar su estructura y estilo, y gestionar la navegación y las propiedades de la ventana del navegador.
Gestión de Múltiples Ventanas, Marcos y Almacenamiento de Datos en Cliente. Esta unidad aborda la interacción entre múltiples ventanas y marcos (iframes) en el navegador, así como el uso de cookies para almacenar y recuperar información persistente en el lado del cliente, fundamental para mantener estados de usuario o preferencias.
Depuración y Documentación de Código JavaScript. Esta unidad cubre las técnicas esenciales para depurar código JavaScript en el navegador, identificar y corregir errores, y la importancia de documentar el código de manera efectiva para mejorar su mantenibilidad y comprensión por otros desarrolladores.
RA4: Programa código para clientes Web analizando y utilizando estructuras definidas por el usuario.
Funciones en JavaScript: Reutilización y Modularidad. Esta unidad explora las funciones en JavaScript, desde las predefinidas del lenguaje hasta la creación de funciones personalizadas. Se enfatiza su papel en la modularización del código, la reutilización y la mejora de la legibilidad y mantenibilidad de las aplicaciones web.
Manejo de Colecciones con Arrays en JavaScript. Esta unidad introduce los arrays en JavaScript como estructuras de datos fundamentales para almacenar colecciones ordenadas de elementos. Se cubren sus características, creación, manipulación y las operaciones más comunes para gestionar listas de información en aplicaciones web.
Programación Orientada a Objetos (POO) en JavaScript: Clases y Objetos. Esta unidad introduce los principios de la Programación Orientada a Objetos (POO) en JavaScript, centrándose en cómo el lenguaje implementa clases, objetos, propiedades y métodos. Se explorará la creación de estructuras de objetos para modelar entidades del mundo real y cómo interactuar con ellas.
Depuración y Documentación de Código Cliente. Esta unidad aborda las prácticas esenciales de depuración y documentación de código JavaScript en el entorno cliente. Se explorarán herramientas y técnicas para identificar y corregir errores, así como la importancia de documentar el código para mejorar su comprensión y mantenibilidad a largo plazo.
RA5: Desarrolla aplicaciones Web interactivas integrando mecanismos de manejo de eventos.
Fundamentos de Eventos en la Web: HTML y JavaScript. Esta unidad introduce el concepto de eventos en el desarrollo web interactivo, explicando cómo el lenguaje de marcas (HTML) prepara los elementos para la interacción y cómo JavaScript se encarga de la gestión de estos eventos. Se diferencian los tipos de eventos más comunes y su propósito.
Características del Lenguaje JavaScript para la Gestión de Eventos. Esta unidad estudia las características que ofrece JavaScript para gestionar eventos: el método addEventListener(), el objeto Event y sus propiedades, las fases de propagación (captura y burbujeo) y la técnica de delegación de eventos. Se complementa con una clasificación de los principales tipos de eventos manejables y con ejemplos prácticos de creación de código que captura y utiliza eventos, incluyendo el control del comportamiento por defecto del navegador.
Gestión y Validación de Formularios Web con Eventos y Expresiones Regulares. Esta unidad se centra en la aplicación de eventos para la gestión y validación de formularios web, reconociendo las capacidades de JavaScript para interactuar con los elementos de formulario y utilizando expresiones regulares para validaciones complejas.
Pruebas y Documentación de Código Interactivo. Esta unidad aborda la importancia de probar y documentar el código JavaScript que maneja eventos, asegurando su correcto funcionamiento y facilitando su mantenimiento y colaboración en equipos de desarrollo.
RA6: Desarrolla aplicaciones web analizando y aplicando las características del modelo de objetos del documento.
El Modelo de Objetos del Documento (DOM): Estructura y Conceptos Fundamentales. Esta unidad introduce el Modelo de Objetos del Documento (DOM) como una interfaz de programación para documentos HTML y XML. Se explora su estructura de árbol, los tipos de nodos y los objetos principales que permiten la interacción con el contenido de una página web, sentando las bases para su manipulación programática.
Acceso y Manipulación Dinámica de la Estructura del Documento. Esta unidad profundiza en las técnicas para acceder a elementos específicos del DOM y modificar su estructura, contenido y atributos. Se cubren los métodos para seleccionar nodos, crear nuevos elementos, insertarlos, eliminarlos y actualizar sus propiedades, permitiendo la construcción de interfaces web dinámicas.
Interacción con el Usuario: Eventos del DOM. Esta unidad se centra en cómo el DOM permite la interacción con el usuario a través de eventos. Se explica el concepto de eventos, cómo asociar funciones a ellos (manejadores de eventos), el objeto Event y los mecanismos de propagación, capacitando al alumno para crear interfaces web reactivas.
Compatibilidad entre Navegadores y Buenas Prácticas en la Manipulación del DOM. Esta unidad aborda las diferencias históricas y actuales en la implementación del DOM entre navegadores, y cómo programar aplicaciones web para asegurar su funcionamiento consistente. Se enfatiza la separación de preocupaciones (contenido, aspecto, comportamiento) y otras buenas prácticas para desarrollar código DOM robusto y mantenible.
RA7: Desarrolla aplicaciones Web dinámicas, reconociendo y aplicando mecanismos de comunicación asíncrona entre cliente y servidor.
Fundamentos de la Comunicación Asíncrona en la Web. Esta unidad introduce la comunicación asíncrona cliente-servidor, evaluando sus ventajas e inconvenientes y analizando los mecanismos principales para su implementación, sentando las bases para el desarrollo de aplicaciones web dinámicas y reactivas.
Implementación de Comunicación Asíncrona con XMLHttpRequest y Fetch API. Esta unidad detalla el uso de los objetos XMLHttpRequest y la Fetch API, identificando sus propiedades y métodos clave para establecer y gestionar la comunicación asíncrona, incluyendo el manejo de respuestas y errores.
Actualización Dinámica del DOM y Formatos de Intercambio de Información. Esta unidad se centra en cómo integrar los datos recibidos asíncronamente para actualizar el documento Web y en la gestión de diferentes formatos de información como JSON, XML y texto plano, tanto en el envío como en la recepción.
Compatibilidad entre Navegadores y Uso de Librerías para Asincronía. Esta unidad aborda la programación de aplicaciones asíncronas compatibles con diferentes navegadores y la clasificación, análisis y uso de librerías que simplifican y estandarizan la incorporación de estas tecnologías, incluyendo la creación y depuración de programas que las utilizan.