Download ejemplogu a - Universidad Politécnica de Madrid

Document related concepts
no text concepts found
Transcript
Guía de aprendizaje del curso
“Programación en Java y su Aplicación a la Web“
1- Detalles generales del curso
1.1 Introducción y bienvenida
El auge de Internet y todas las herramientas relacionadas con el mismo ha supuesto un
incremento de interés por parte de las empresas y de los usuarios en el conocimiento de
lenguajes que permitan la programación Web. Java es un lenguaje orientado a objetos que
permite de una forma sencilla la programación de aplicaciones Web, aunque no se limita a esta
funcionalidad. El curso dará una visión global de dicho lenguaje, analizando de forma más
detallada todas aquellas cuestiones relacionadas con la programación de aplicaciones Web,
concretamente a través del estudio de los applets y servlets Java.
1.2 Nombre de el/los profesor/es y correo electrónico
María de los Santos Pérez Hernández ([email protected])
Víctor Robles Forcada ([email protected])
1.3 Objetivos generales del curso
Este curso pretende que el alumno aprenda los conceptos básicos de la Programación
Orientada a Objetos, su implementación en el lenguaje Java y las soluciones más habituales de
los mismos. El curso estará orientado a la programación de todo tipo de aplicaciones, tomando
un papel destacado la programación de aplicaciones Web a través de la tecnología Java. Se
dotará al seminario de un fuerte contenido práctico.
1.4 Metodología y evaluación

Materiales de estudio:
Todo el material para el estudio del curso se encuentra en la Web del GATE. Además de
las páginas propias del curso se irán dando direcciones Web en donde el alumno podrá
encontrar material adicional o analizar cómo los conceptos que se van aprendiendo en el
curso son utilizados en algunos sitios Web.
Adicionalmente se proporcionará al alumno diversos programas de libre distribución que
le servirán para la realización de las prácticas del curso.
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
1

Funcionamiento de las tutorías:
Las tutorías del curso se realizarán por correo electrónico, aunque dependiendo de las
necesidades que se vayan generando a lo largo del mismo es posible que se abran otros
cauces de comunicación, como por ejemplo un foro de discusión del alumno con los
profesores. Además, se creará un FAQ con las preguntas más frecuentes y sus
respuestas. El profesor también participará en algunos de los debates propuestos.

Uso de los espacios (foros, tablón, debates...):
o Tablón: El tablón contendrá las últimas noticias sobre el desarrollo del curso. Se
anunciarán los foros y debates creados, así como cualquier información que el
profesor considere relevante para los alumnos.
o Foros: Espacio dedicado a los alumnos en el que podrán discutir de sus temas,
dando sus opiniones de forma totalmente abierta y libre.
o Actividades:
o Debates: En este espacio se plantearán distintos temas o cuestiones
relacionados con el tema del curso que los alumnos deben debatir.

Herramientas de aprendizaje:
A lo largo del desarrollo del curso el alumno utilizará el kit de desarrollo JDK, que
proporciona Sun. Este entorno permite la compilación, ejecución y depuración de los
programas desarrollados en el lenguaje Java.

Descripción de la evaluación:
Al curso se le dotará de un fuerte contenido práctico, a través del uso de ejercicios y
actividades.
Algunas actividades serán de autoevaluación y opcionales, aunque se recomienda su
resolución por parte de todos los alumnos.
Otras actividades tendrán carácter obligatorio y se les otorgará una nota.
Los módulos se realizarán de forma secuencial, debido a que las unidades docentes
requieren de los conocimientos impartidos por las unidades anteriores.
La evaluación del curso se realizará a través de actividades teóricas y prácticas,
obteniéndose la nota final como
Nota = Parte Teórica * 0.25 + Parte Práctica * 0.75
La parte teórica constará de dos ejercicios tipo Test, al final del Tema 11 y del Tema 19.
La parte práctica será evaluada a través de la entrega de dos ejercicios de evaluación
obligatorios al final del tema 17 y del tema 19.
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
2
1.5 Cuadro de temporalización general del curso
Curso 2002
Módulo 1
Módulo 2
Mayo
Junio
Julio
3 May-9 May
10 May-17 May
Módulo 3
17 May-31 May
Módulo 4
1 Jun-15 Jun
Módulo 5
16 Jun-30 Jun
Módulo 6
1 Jul-17 Jul
Módulo 7
18 Jul-31 Jul
2- Detalles por capítulos o módulos del curso
2.1 Contenidos detallados
Módulo 1: “Introducción a JAVA “
2.1.1 Objetivos generales del módulo
El objetivo principal del módulo es dar una visión general del lenguaje Java y de la
metodología de programación orientada a objetos, relacionando dicho paradigma con la
programación estructurada. Además, el módulo recoge la historia del nacimiento del
lenguaje Java y las características que hacen del mismo un lenguaje adecuado para la
programación en cualquier campo y más concretamente, en la programación de
aplicaciones Web.
Por otro lado, el módulo describe la Máquina Virtual Java, que permite que el código
escrito en Java sea portable a distintas arquitecturas y sistemas operativos.
Finalmente, se describe el entorno de compilación y ejecución, a través del uso de las
herramientas que proporciona el Kit de Desarrollo JDK, mostrándose un primer ejemplo
de aplicación escrita en Java.
2.1.2 Orientaciones al estudio del módulo
El módulo describe las características de Java, que nos permitirán posteriormente la
construcción de applets y servlets (programación Web mediante Java). Entender el
concepto de la Máquina Virtual Java es fundamental para entender la portabilidad del
lenguaje.
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
3
Durante este módulo es imprescindible aprender a manejar el entorno de programación
en Java JDK, que puede ser descargado de la página web http://java.sun.com/products/.
El alumno tendrá que compilar y ejecutar el ejemplo que se proporciona en el módulo.
Se recomienda al alumno no pasar de módulo hasta que todos los conceptos queden
perfectamente claros y logre ejecutar su primera aplicación en Java.
2.1.3 Lecciones, temas o capítulos
Tema 1: Introducción
Tema 2: El paradigma de programación orientada a objetos
¿En qué consiste la programación orientada a objetos?
Concepto de Objeto
Concepto de Clase
Conceptos de Herencia y Polimorfismo
Tema 3: Historia de Java
Tema 4: Características de Java
Tema 5: Entorno de programación en Java
Compilación y ejecución de un programa en Java
Las variables PATH y CLASSPATH
Tema 6: Aplicaciones en Java
Una primera aplicación en Java
Cuadro de planificación del módulo
Módulo 1
Tema
Actividades
Temporización
Tema 1
Introducción al lenguaje Java
Tema teórico
15 min
Tema 2
Introducción a la programación
orientada a objetos
Actividad 0
2 horas
Tema 3
Historia de Java
Tema teórico
15 min
Tema 4
Características de Java
Debate 1
1 hora 30 min
Tema 5
Entorno de programación en Java
Actividad 1
1 hora
Tema 6
Aplicaciones en Java
Actividad 2
1 hora
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
4
Módulo 2: “Sintaxis del lenguaje JAVA“
Objetivos generales del módulo
Este módulo describe de forma concisa la sintaxis del lenguaje Java. Para ello, se
describen las variables, los tipos, los operadores y las estructuras de control de flujo del
lenguaje. Además, se proporcionan unas normas de nombrado para lograr legibilidad y
coherencia en el código.
Orientaciones al estudio del módulo
El objetivo de este módulo es proporcionar al alumno la sintaxis Java necesaria para
realizar cualquier programa. No obstante, el módulo no se extiende de forma muy
extensa, debido a que la sintaxis no es más que mero transporte para lograr
implementar las soluciones Java. Para mayor información sobre el tema y de cara a la
programación, se recomienda al lector consultar cualquier duda en un manual del
lenguaje. Estos manuales pueden encontrarse en páginas Web de la red. A los alumnos
se les proporcionará algunas de estas direcciones.
El alumno tendrá que realizar los ejercicios planteados en el módulo antes de pasar al
siguiente.
Temas (Unidades Didácticas)
Tema 7: Sintaxis del lenguaje Java
Variables y Tipos
Normas de uso de los nombres de las variables
Comentarios
Operadores Java
1. Operadores aritméticos
2. Operadores de asignación
3. Operadores unarios
4. Operadores incremental y decremental
5. Operadores relacionales
6. Operadores lógicos
7. Operadores sobre bits
8. Operador condicional ?:
9. Concatenación de cadenas de caracteres
10. Operador instanceof
Estructuras de control de flujo
Cuadro de planificación del módulo
Módulo 2
Tema 7
Tema
Actividades
Temporización
Sintaxis del lenguaje Java
Ejercicios de
autoevaluación
0, 1, 2 y 3
7 horas
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
5
Módulo 3: “Objetos, Clases y StringsSintaxis del lenguaje JAVA“
Objetivos generales del módulo
Este módulo trata dos conceptos fundamentales de la programación orientada a objetos:
los objetos y las clases, pero lo hace desde el punto de vista del lenguaje Java. También
se introduce el concepto de interfaz.
Además, el módulo detalla las APIs (Application Program Interface) estándares de Java,
que facilitan la tarea de programación.
Finalmente, se describen los Strings y Arrays, que son clases Java muy utilizadas en los
programas.
Orientaciones al estudio del módulo
Este módulo es fundamental para entender la orientación a objetos y beneficiarse de sus
ventajas a la hora de programar en Java. Es necesario que el alumno entienda
perfectamente la metodología y la aplique a la resolución de los problemas. Por ese
motivo, el alumno tendrá que realizar de forma satisfactoria los ejercicios que se
proponen en el módulo antes de avanzar en el curso.
Por otro lado, manejar las clases String y Array con soltura proporcionará al alumno
capacidad para resolver muchos de los problemas que se plantean de una forma rápida.
Para encontrar información sobre todas las clases y métodos definidos en Java es
aconsejable conectarse y consultar la información recogida en la página web
http://java.sun.com/j2se/1.3/docs/api/index.html.
Temas (Unidades Didácticas)
Tema 8: Java orientado a objetos
Un objeto en Java
Una clase Java
Tema 9: APIs estándares
Tema 10: Strings
Construcción de un string
Concatenación de strings
Manipulación de strings
Extracción de strings
Tema 11: Arrays
Arrays
Arrays bidimensionales
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
6
Cuadro de planificación del módulo
Módulo 3
Tema
Tema 8
Java orientado a objetos
Tema 9
APIs estándares
Tema 10
Strings
Tema 11
Arrays
Actividades
Ejercicios de
autoevaluación
0y1
Temporización
Tema teórico
1 hora
Ejercicio de
autoevaluación 2
Ejercicios de
autoevaluación
3, 4 y 5
Test 1
5 horas
2 horas 30 min
3 horas 30 min
Módulo 4: “Otras clases útiles “
Objetivos generales del módulo
Las clases vistas en el módulo anterior nos permiten resolver muchos problemas. Pero
para ciertas aplicaciones, existe un conjunto de clases más adaptadas y muy útiles, que
se encuentran en el paquete java.util. Concretamente, el módulo analiza las clases
Vector, Hashtable y StringTokenizer y la interfaz Enumeration.
Además de estas clases, el módulo analiza como llevar a cabo las operaciones de E/S
con el lenguaje Java y como leer a través de la entrada estándar o escribir en la salida
estándar.
Orientaciones al estudio del módulo
En este módulo es imprescindible entender el API de las clases detalladas, es decir,
todos aquellos métodos que nos permiten acceder a la funcionalidad de las mismas.
Para familiarizarse con el uso de dichas clases, será imprescindible realizar los ejercicios
propuestos.
Temas (Unidades Didácticas)
Tema 12: Clase Vector
Tema 13: Clase Hashtable
Tema 14: Clase StringTokenizer
Tema 15: Interfaz Enumeration
Tema 16: E/S
Ficheros
Clase System
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
7
Cuadro de planificación del módulo
Módulo 4
Tema
Actividades
Ejercicio de
autoevaluación 0
Temporización
Tema 12
Clase Vector
Tema 13
Clase Hashtable
1 hora
Tema 14
Clase StringTokenizer
1 hora
Tema 15
Interfaz Enumeration
Actividad 4
3 horas
Tema 16
E/S
Ejercicio de
autoevaluación 1
4 horas
3 horas
Módulo 5: “Applets“
Objetivos generales del módulo
Un applet es un programa Java embebido en el navegador web y que, por tanto, se
ejecuta en dicho navegador. Los applets constituyen una forma de implementar a través
del lenguaje Java una aplicación web.
Este módulo incluye los conocimientos necesarios para programar applets, detallando
como se lleva a cabo el paso de parámetros.
Orientaciones al estudio del módulo
Es necesario entender cómo funcionan los applets para poder programarlos de forma
correcta.
Se recomienda al alumno compilar y ejecutar el applet que se proporciona como
ejemplo. Para ello, deberá hacer uso de la herramienta appletviewer, así como de
cualquier navegador.
Temas (Unidades Didácticas)
Tema 17: Applets
¿Qué es un applet?
Programación de un applet
Paso de parámetros a un applet
Cuadro de planificación del módulo
Módulo 5
Tema
Tema 17
Applets
Actividades
Temporización
Actividad 5
Ejercicio de evaluación
8 horas
1
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
8
Módulo 6: “Interfaces de usuario gráficas“
Objetivos generales del módulo
Debido al aumento de prestaciones de los computadores, que presentan tarjetas
gráficas más potentes y al desarrollo conseguido en el tema de visualización, las
interfaces de usuario gráficas están viendo incrementada su importancia. Java
proporciona la funcionalidad necesaria para la gestión de la interfaz gráfica. Además, es
bastante sencillo hacer uso de estas características.
Este módulo está centrado fundamentalmente en AWT (Abstract Window Toolkit), que
consiste en una colección de clases Java que permiten al programador crear interfaces
de usuario gráficas. Al final del módulo, se realiza una pequeña introducción a la
tecnología Swing.
Orientaciones al estudio del módulo
Este módulo permite la realización de ejercicios más vistosos y más útiles, ya que a
partir de su estudio, el alumno es capaz de implementar interfaces gráficas. Los
ejercicios y ejemplos se han desarrollado en forma de applets, para practicar con la
implementación de aplicaciones web que necesiten de elementos gráficos.
Temas (Unidades Didácticas)
Tema 18: Interfaces de usuario gráficas
Arquitectura MVC
Definición de la arquitectura MVC
AWT
1. Métodos para dibujar
2. Componentes AWT
3. Control de eventos
Introducción a Swing
Cuadro de planificación del módulo
Módulo 6
Tema 18
Tema
Interfaces de usuario gráficas
Actividades
Temporización
Ejercicios de
13 horas
autoevaluación 0, 1 y 2
Módulo 7: “Introducción a los servlets “
Objetivos generales del módulo
Los servlets, a diferencia de los applets, son programas escritos en Java que se
ejecutan en los servidores. Los servlets no están ligados a un protocolo específico
cliente-servidor, pero los más utilizados hacen uso del protocolo HTTP, por lo que
normalmente cuando hablamos de los servlets nos estamos refiriendo a los servlets
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
9
HTTP. Este módulo permite la implementación de servlets HTTP. El módulo describe la
estructura de un servlet, cómo un servlet obtiene y envía información y como se lleva a
cabo su ejecución.
Orientaciones al estudio del módulo
Para llevar a cabo la ejecución de servlets, necesitamos utilizar un servidor. Un ejemplo
de servidor que permite la ejecución de los servlets y que es gratuito es el servidor
JavaServer Web Development Kit (JSWDK), que puede descargarse de la página web
http://java.sun.com/products/servlet/. El alumno tendrá que descargarlo e instalarlo para
poder realizar los ejercicios que se propongan.
Temas (Unidades Didácticas)
Tema 19: Introducción a los Servlets
¿Qué es un servlet?
Arquitectura de un servlet
HTTP
Estructura de un servlet
Obtención y envío de información
Ejecución
Servlets vs CGI
Cuadro de planificación del módulo
Módulo 7
Tema 19
Tema
Introducción a los servlets
Actividades
Temporización
Ejercicio de evaluación
2
12 horas
Test 2
Gabinete de Tele-Educación - Universidad Politécnica de Madrid
10