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