Área de conocimiento Ciencia de la Computación e Inteligencia Artificial Departamento Ciencia de la Computación e Inteligencia Artificial Estudios en los que se imparte Ingeniería Informática, Ingeniería Técnica en Informática de Gestión, Ingeniería Técnica en Informática de Sistemas
Esta asignatura trata los principios básicos de funcionamiento de las aplicaciones web y las tecnologías disponibles para su desarrollo. Por un lado se aborda la creación de interfaces web con HTML y CSS, incluyendo las peculiaridades de los dispositivos móviles. Por otro, el desarrollo de aplicaciones web, centrándose sobre todo la parte del cliente, e introduciendo conceptos básicos de la programación en el servidor.
Materiales publicados
archivos
recursos docentes
recursos web
pdf
doc
html
ppt
avi/mpeg/swf
mp3
temas
prácticas
ejercicios
exámenes
artículos
site
docuwiki
blog
moodle
otros
Objetivos
Al finalizar la asignatura, el alumno debería ser capaz de desarrollar una aplicación web completa en el lado del cliente, accesible mediante navegador web estándar o dispositivo móvil. A un nivel básico, también debe comprender los principios de desarrollo de la aplicación en el lado del servidor.
Contenidos
Tema 1: Introducción a las aplicaciones web Todas las aplicaciones web se basan en el protocolo HTTP, que establece cómo se realiza la comunicación entre cliente web (generalmente navegador) y servidor web. En este tema se ofrece una introducción muy básica a HTTP y a la forma en que las distintas plataformas de programación web existentes (.NET, J2EE, PHP, ...) lo emplean "por debajo" para implementar las aplicaciones web.
Tema 2: Lenguajes de marcado El lenguaje HTML describe la estructura y contenido de las páginas web y el CSS proporciona el aspecto. En un buen diseño web es importante ser capaz de separar de manera consistente ambos factores. En este tema veremos algunos aspectos de HTML5, que permiten mejorar y clarificar la estructura de nuestras páginas. Por otro lado, XML sirve para definir nuestros propios lenguajes de marcado y puede utilizarse en la web como un paso más en la separación entre estilo y contenido
Tema 3: JavaScript
JavaScript es un lenguaje interpretado por el navegador que permite realizar páginas interactivas. El lenguaje permite el acceso y manipulación de las propiedades del documento HTML, de manera que se pueden verificar datos de formularios, hacer animaciones, crear menús,... En la web 2.0 las posibilidades de JavaScript se han ampliado al hacerse omnipresente AJAX, en el que se lanzan peticiones al servidor desde JavaScript para poder actualizar la interfaz del usuario sin necesidad de recargar la página (siendo ejemplos paradigmáticos GMail o Google Maps). También veremos algunos APIs de HTML5, que permiten implementar de modo estándar funcionalidades que hasta ahora requerían de librerías no incluidas habitualmente en los navegadores (como geolocalización, funcionamiento offline o acceso a bases de datos SQL en el cliente)
Tema 4: Frameworks para programación en el cliente
Con la web 2.0 y las aplicaciones web con un aspecto cada vez más parecido a las de escritorio el número de líneas de código en el cliente de una aplicación típica ha crecido de manera exponencial. Como resultado, han empezado a surgir frameworks de programación en el cliente, que simplifican la programación de la interfaz y permiten organizar y estructurar mucho mejor nuestro código. Nos centraremos sobre todo en frameworks javascript como JQuery o Prototype
Tema 5: Aplicaciones web para dispositivos móviles
Los smartphones representan cada vez un mayor porcentaje del tráfico en internet. Las aplicaciones web para móviles tienen una serie de requerimientos propios derivados básicamente de las limitaciones de los dispositivos en cuanto a tamaño de pantalla y capacidad de procesamiento. Veremos cómo adaptar el interfaz de una aplicación web para las plataformas más difundidas en la actualidad : iPhone y Android
Tema 6: Servicios web Los servicios web nos permiten invocar operaciones en un servidor remoto, utilizando para ello protocolos web estándar, como HTTP. Los mensajes que se intercambian para invocar el servicio se codifican en lenguajes estándar basados en XML. En este tema veremos las principales tecnologías que nos permiten trabajar con servicios web y los dos "estilos" existentes: SOAP, apropiado para maximizar la interoperabilidad, y REST, indicado para clientes ligeros, por ejemplo en Javascript