Desarrollo Web Avanzado

El mundo Web ha pasado en poco tiempo a ser una disciplina con entidad propia y con una complejidad técnica considerable que requiere adquirir conocimientos técnicos a un ritmo elevado.

La mayor parte de los profesionales del mundo Web no disponen de vías sencillas para ponerse al día en la nuevas tecnologías. En los estudios de las Ingenierías Informáticas tampoco hay lugar para profundizar, i algunas veces ni tan siquiera abordar las tecnologías específicas del mundo Web actual.

Por este motivo, el objetivo fundamental se establece en la adquisició de aptitutes directamente aplicables al desarrollo de sistemas de información avanzados. Por eso, se estudiarán tanto los entornos necesarios, como las herramientas, tecnologías, arquitecturas y mecanismos de gestión y protección de la información.


Información oficial del centro de postgrado

Temario

NOTA: Para una mejor valoración del material ofrecido por el curso, algunos de los contenidos están disponibles para su descarga a través de los enlaces del temario.

  • 1) Web avanzado: conceptos e implicaciones
    • Preliminares:
      • Necesidad del curso y aspectos organizativos del mismo.
    • Conceptos avanzados:
      • Informática Social:
        • Conceptos fundamentales del Web
        • Web 2.0 y su Software
        • Aplicaciones del Web 2.0
      • Interoperabilidad:
        • Plataformas
        • Arquitecturas orientadas a servicios (SOA)
        • Estandares y Normalización
      • Tecnologías:
        • Planificación de proyectos
        • Herramientas y entornos de desarrollo
        • Tecnologías de cliente y servidor
    • Implicaciones:
      • Organizativas:
        • Dirección tecnológica. Infraestructura, estrategia y políticas
        • Implicaciones para la organización
        • Aplicaciones prácticas
      • Seguridad:
        • Legalidad, garantía y control
        • Activos de Información
  • 2) Activos de información: Gestión, protección y control
    • Introducción
    • Dimensiones de la seguridad de la información:
      • Disponibilidad
      • Integridad
      • Confidencialidad
    • Análisis sistemático de riesgos:
      • Activos
      • Amenazas
      • Riesgo
    • Tratamiento del riesgo en la programación web avanzada:
      • Establecimiento de salvaguardas
      • Asunción de un riesgo residual
    • Normas y recomendaciones de seguridad:
      • La protección de los datos personales
      • La família de normas ISO 27000
  • 3) Herramientas y nuevos entornos de desarrollo:
    • Documentación:
      • Wiki
      • DocBook
    • Control de versiones: Subversion. Instalación, configuración y uso
    • Entornos de desarrollo:
      • Eclipse
      • Netbeans
    • Gestión de proyectos:
      • Trac
      • Bugzilla
      • JIRA
    • Técnicas de desarrollo ágil de proyectos:
      • Ant
      • Maven
      • JUnit
      • Selenium
      • Mylyn
  • 4) Tecnologías de cliente:
    • Marcado web:
      • HTML 5
      • XHTML/XHTML 2.0
    • Hojas de estilo: CSS y CSS3
    • Familia de tecnologías XML:
      • Información: XML y XML Namespaces
      • Presentación: XSL y Formatting objects
      • Estructura: DTD XML Schema
      • Búsqueda: XPath, XQuery
    • JavaScript:
      • Sintaxis
      • Orientación a objetos
      • El Document Object Model (DOM)
      • Herramientas de desarrollo y depuración: Firebug
      • AJAX y JSON
    • Gráficos en la web: X3D, Applets, Flash, Canvas y SVG
    • Frameworks cliente Rico:
      • Frameworks JavaScript:
        • Prototype
        • Script.aculo.us
        • jQuery
      • Frameworks no JavaScript:
        • JavaFX
        • Silverlight
        • Flex y OpenLaszlo
  • 5) Tecnologías de servidor:
    • PHP (1a parte):
      • Preparación del entorno: Apache, PHP, MySQL
        • Instalación de componentes
        • Configuración básica de un servidor apache:
          • Directivas básicas
          • Módulos
          • Hosts virtuales
          • Reescritura de URLs
        • Configuración de PHP
        • Configuración de MySQL
      • El lenguaje PHP:
        • Introducción
        • El lenguaje:
          • Sintaxis
          • Tipos de datos
          • Expresiones y operadores
          • Estructuras de control
          • Funciones, clases, objetos
          • PCRE
        • Interacción con el web:
          • Variables predefinidas
          • Forms y XForms
          • Subida de ficheros
          • Quoting
          • Sesiones
          • Safe mode
        • Acceso a base de datos:
          • Fundamentos
          • Ejemplos
        • Librerías, PEAR, PECL
        • Problemas comunes:
          • Concurrencia
          • Portabilidad
          • Internacionalización
          • Distribución
          • Depuración
          • Código cerrado
        • Ejemplos típicos:
          • Autenticación
          • Almacenamiento de imágenes
    • PHP (2a parte):
      • Evolución de la orientación a objetos a través de PHP 3, 4 y 5
      • Clases
      • Modificadores final y static
      • Herencia
      • Clases abstractas e interfaces
      • Sobrecarga
      • Conceptos avanzados
        • Autoload de clases
        • Enumeración
        • Clonado
        • Reflexión
        • Comparación
      • El patrón de diseño MVC
      • Zend Framework
        • Comparación con otros frameworks
        • Introducción
        • Construcción de Hello Zend!
        • El modelo en Zend Framework
        • Autenticación y autorización
    • Java:
      • Introducción:
        • Introducción y sintaxis
        • Tipos de datos
        • Estructuras de control
        • Clases en Java. Heréncia e Interfaces
        • Packages
        • Excepciones en Java
        • Entrada/Salida y clases útiles
      • Aspectos avanzados:
        • Applets e interfaces gráficas de usuario con Swing/AWT
        • Threads
        • Programación de Sockets
        • Politicas de seguridad Java
      • Java y XML:
        • Validación de documentos mediante DTD y XML schema
        • Uso del interfaz SAX y DOM
        • Transformaciones XSL
        • JAXB: Java API for XML Binding
        • Frameworks de publicación XML: Cocoon
      • J2EE 5.0:
        • Introducción a J2EE 5.0
        • Servidores de aplicaciones Java:
          • Conceptos generales
          • Formatos de despliegue de aplicaciones
          • Configuración de la conexión a base de datos. Tipos de conexión. Pooling. Datasources
          • Instalación y administración de un servidor de aplicaciones: Tomcat y Jetty
        • Acceso a datos:
          • JDBC
          • Mapeo objeto/relacional con Hibernate
          • JPA: Java Persistence API
          • Spring Framework para el acceso a datos
        • Aplicaciones Web:
          • Servlets
          • JSP (JavaServer Pages) y JSTL (JavaServer Pages Standard Tag Library)
  • 6) Seguridad en entornos web:
    • Introducción a la seguridad Web:
      • Entrada de datos, variables globales y escapado automático, consideraciones.
    • Errores de seguridad convencionales y técnicas de explotación:
      • HTML, SQL, Blind SQL y XPath injection.
      • XSS o Cross Site Scripting.
      • XST o Cross Site Tracing.
      • Session Fixation.
      • Session Hijacking.
      • Comprobación insuficiente.
      • Null Byte.
      • Apache y mod_mime.
    • Técnicas de protección adicionales:
      • Captchas, tipos de ataques.
      • Controles anti-spam, ofuscación JavaScript.
      • Herramientas de auditoría.
      • Cookies httponly y secure.
  • 7) Arquitecturas orientadas a servicios:
    • Conceptos generales:
      • Introducción a los Servicios Web
      • SOA: Arquitecturas orientadas a servicios
    • Servicios Web:
      • Tipos de Servicios Web
      • WSDL: Web Service Definition Language
      • SOAP: Simple Object Access Protocol
      • Axis y JAX-WS
      • REST Web Servies: JAX-RS
      • UDDI: Universal Description, Discovery and Integration
      • Otros estándares relacionados
  • 8) Proyecto fin de curso

Metodología

El curso se realizará de forma NO presencial, contándose con el apoyo de toda la documentación ofrecida como complemento del curso, ejemplos, casos prácticos, tutorias virtuales y, para aquellos que lo deseen, tutorias presenciales en las instalaciones de la Universitat Jaume I.

Calendario oficial del curso

Evaluación

Cada módulo presenta unos ejercicios de realización obligatoria. Se requiere la confección de un proyecto final de curso que deberá llevar a la práctica tecnologías de servidor y de cliente rico.

Matrícula

El importe del curso es de 1500 euros. Para más información sobre el proceso de matrícula y las condiciones existentes de financiación, será necesario ponerse en contacto con el Centro de postgrado en la dirección/teléfono indicados en el apartado siguiente.

Contacto

Universitat Jaume I

Fundación Universitat Jaume I - Empresa
Centro de postgrado y Consejo Social
Campus Riu Sec - 12071 Castelló
http://www.fue.uji.es/postgrado
formacion@fue.uji.es
Teléfono: 964.387.209 / 222
Fax: 964.387.010

Universitat Jaume I

Valid XHTML 1.0 Transitional