Acceder a la página principal de la ETSEImagen decorativa
Lenguajes de Programación (Telemática 2004-05) 

Programa de la asignatura

Objetivos

  • Conocer y ser capaz de realizar programas utilizando el paradigma de la orientación a objetos.
  • Conocer y desarrollar aplicaciones utilizando la programación concurrente.
  • Conocer y ser capaz de utilizar las clases de las librerías de Java para el diseño de interfaces gráficas de usuario.
  • Conocer y saber utilizar applets. Crear páginas web que los contengan. Identificar las limitaciones de los applets en cuanto a seguridad. Comprender los mecanismos para realizar applets firmados y conocer en qué situaciones es necesario utilizarlos.
  • Comprender los conceptos básicos de la programación distribuida. Conocer las clases de Java para la programación en red. Conocer el proceso para crear una aplicación distribuida que utilice RMI. Conocer el proceso para crear una aplicación distribuida que utilice CORBA. Saber cuando se debe utilizar cada una de estas tecnologías.

Temario

  1. Preliminares
    • El estudio de los lenguajes de programación
    • Categorías de lenguajes
    • Evolución de los lenguajes de programación
  2. Programación orientada a objetos
    • Ocultación de información: Clases
    • Mensajes y métodos
    • Herencia
    • Polimorfismo
    • El lenguaje de programación Java
    • Otros lenguajes orientados a objetos
  3. Programación concurrente
    • La concurrencia en los lenguajes de programación
    • Soporte para la concurrencia en Java: Threads
    • Mecanismos de sincronización
    • Concurrencia en otros lenguajes de programación
  4. Entrada/Salida. Serialización de objetos en Java
    • Flujos
    • Clases e interfaces del paquete java.io
    • Serialización de objetos
  5. Interfaces gráficas de usuario
    • La arquitectura MVC (Model View Controller)
    • AWT (Abstract Window Toolkit)
    • Programación dirigida por eventos
    • Swing
    • Clases e interfaces de java.awt y javax.swing
  6. Applets
    • La clase JApplet. Limitaciones de seguridad
    • Applets firmados
  7. Programación distribuida
    • Fundamentos del trabajo en red
    • Clases e interfaces para el trabajo en red
    • Acceso a bases de datos (JDBC)
    • Middleware
    • Invocación remota de métodos (RMI)
    • CORBA (Common Object Request Broker Arquitecture)

Bibliografía

Cómo programar en Java
Deitel, H.M., Deitel, P.J.. Prentice Hall, 1998 (CI 681.3 DEI)

Introducción a la programación con Java
Arnow, D., Weiss, G.. Addison Wesley, 2000 (CI 681.3.06 ARN)

Piensa en Java
Eckel, B. Prentice Hall, 2003 (CI 681.3.06 ECK)

Java con programación orientada a objetos y aplicaciones en la WWW
Wang, P.S. Thomson Editores, 2000

Método de evaluación

En primera convocatoria:

  • Examen escrito de teoría (2/3 de la nota final). Sabiendo que existirá un examen parcial en febrero que abarcará los temas 1-3 del programa de la asignatura. Este examen permitirá eliminar materia a los alumnos que obtengan una calificación superior a 4 (sobre 10).
  • Evaluación del trabajo realizado en el laboratorio (1/3 de la nota final). Consta de la evaluación del trabajo realizado durante las sesiones (1/2 de la nota de prácticas) y un examen escrito individual (1/2 de la nota de prácticas).
  • Se requiere un 4 (sobre 10) como nota mínima en cada uno de los dos apartados anteriores para promediar y poder aprobar la asignatura.

En segunda convocatoria:

  • Examen escrito sobre el temario de teoría.
  • Examen escrito sobre el trabajo práctico de laboratorio.

Sólo se deberán realizar ambos exámenes si se obtuvo un nota inferior a 5 (sobre 10) en las dos partes en la primera convocatoria. En caso contrario, sólo se deberá realizar el examen de la parte suspendido. Se mantiene la relación de 2/3 para teoría y 1/3 para laboratorio sobre la calificación final y la nota mínima (4) en cada parte.


[Última modificación: 11 diciembre 2003]