CÁTEDRA: PROGRAMACIÓN II

PROFESOR TITULAR: Miguel Arrighi arrighim@profesores.ucongreso.edu.ar
DOCENTE: Elio Saltalamacchia saltalamacchiae@profesores.ucongreso.edu.ar

  Objetivos
Unidades
Metodología
Bibliografía
Regularidad
Cronograma
de
clases
 
Otros programas: 2001 2002 2004 2005

OBJETIVOS
- Que el alumno aplique los conceptos de Orientación a Objetos sobre el lenguaje JAVA

- Que el alumno adquiera el conocimiento de las características de la plataforma JAVA y desarrolle la capacidad de autoaprendizaje de nuevas APIs.

- Que el alumno desarrolle las competencias necesarias para la resolución y codificación de problemas sobre el lenguaje JAVA.

CONTENIDOS

UNIDAD I

Conceptos generales. Surgimiento de la OO: Orientación a procesos, Orientación a Datos y Orientación a Objetos. Concepto de Clase. Objeto. Atributos. Métodos. Herencia. Polimorfismo. Agregación. Tipos de Agregación. Estándar UML. Modelo de funcionamiento del software Orientado a Objetos. Modelo de responsabilidad y Colaboración.

UNIDAD II

Descripción del Lenguaje. Origen. Características. Multiplataforma. Orientado a Objetos. Multihilo. Seguro. ByteCode. Excepciones. La Maquina Virtual JAVA. El recolector de Basura. JAVA vs. C++. El SDK. Descripción de contenido y Versiones. Glosario de Términos comunes en el mundo JAVA. Ejemplo de aplicaciones.

UNIDAD III

Instalación del SDK (Windows y Linux). La descripción de la estructura de directorios. Variables de entorno. Escribir, compilar y ejecutar. Primer programa en JAVA. Uso de las principales herramientas del SDK. Descripción del entorno de edición (IDE), compilación y ejecución (JRE) en aplicaciones JAVA.

UNIDAD IV

Partes de una clase. Declaración e instanciación de una clase. Declaración de atributos. Declaración de Métodos. Declaraciones de Constructores. Constructor por defecto. Funcionamiento del recoletor de basura. Modificadores de los miembros de una clase. Sentencias Import y Package. Uso de la documentación de las API.

UNIDAD V

Autodocumentación del código fuente. Comentarios. JavaDoc. Bloques de código. Identificadores. Palablas reservadas. Tipos primitivos de dato: boolean, char, byte, short, int, long, double y float. Wrapers (clases equivalentes). Conversiones de tipo. Variables de referencia. this.

UNIDAD VI

API para la creación de aplicaciones carácter. Argumentos de Linea de comandos. Expresiones. Operadores. Presedencia de operadores. Estructuras de control condicionales. IF-ELSE. SWITCH. Estructuras repetitivas. FOR. WHILE. DO-WHILE. Sentencias de control de estructuras repetitivas. BREAK. CONTINUE. Entrada y Salida por consola.

UNIDAD VII

Declaración de arreglos. Creación de arreglos en memoria. Inicialización. Arreglos multidimensionales. Rangos. Redimensionamiento dinámico. Copia de arreglos.

UNIDAD VIII

Codificación. Restricciones. Recomendaciones. Polimorfismo. Operador INSTANCEOF. Sobrecarga y sobre escritura de métodos y Constructores. Invocación de constructor de la superclase. SUPER(). La clase OBJECT. El método EQUALS(). El método TOSTRING().

UNIDAD IX

Atributos y métodos “de clase”. Modificador STATIC. FINAL. Clases Abstractas. Interfaces.

UNIDAD X

Concepto de Excepción. Manejo de excepciones. TRY CATCH. FINALLY. Categorías de excepciones. Excepciones frecuentes. Declaración de Excepciones. Definición de nuevas Excepciones. Sobre escritura de métodos que lanzan excepciones.

UNIDAD XI

Concepto de Hilo (thread). Consideraciones de la programación multihilo. Creación de hilos. Ejecución de hilos. Estados de un objeto hilo. Control de hilos. Terminar, dormir, cambiar prioridad o dejar en espera a un hilo.

UNIDAD XII

System.getProperties. Clase Properties.

Colecciones, tipos, ejemplos de uso.

Clases Internas.

UNIDAD XIII

API AWT. Descripción de la API. Frame. Paneles. Layout. Manejo de eventos.

Applets. Ciclo de vida de un applet.

UNIDAD XIV

Serialización de objetos. APIs para Networking. Aplicación Cliente y Servidor sobre TCP/IP.

UNIDAD XV

API JDBC. Conexión a base de datos relacionales. Ejemplos de uso.

ESTRATEGIAS METODOLOGICAS
Durante todo el año el alumno trabaja en el laboratorio, aplicando todos los conocimientos teóricos adquiridos.

En el segundo semestre el alumno diseña e implementa una aplicación completa aplicando todos los conocimientos obtenidos.

RECURSOS DIDACTICOS

Acceso a Internet

Acceso al laboratorio de sistemas.

Compilador del lenguaje.

SUN JDK 1.5

Eclipse

BIBLIOGRAFIA

Bibliografía General

JAVA 2 FUNDAMENTOS

ISBN 8420537004Autor HORSTMANN CAY S.CORNELL GARYEditorial PRENTICE-HALL

JAVA 2 CARACTERISTICAS AVANZADAS

ISBN 8420537012Autor HORSTMANN CAY S.CORNELL GARYEditorial PRENTICE-HALL

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

ISBN 84-481-3194-0

Autor: C. Thomas Wu

Editorial: McGraw-Hill

COMO PROGRAMAR EN JAVA

ISBN 9701700449Autor DEITEL H. M.Editorial PRENTICE-HALL

Thinking in JAVA(version electrónica gratuita en http://www.mindview.net/Books/TIJ/)

ISBN 0-13-027363-5

Autor: Bruce Eckel

Editorial: Prentice Hall

Java 1.2 Al descubierto

ISBN 84-8322-061-X

Autor: Jamie Jaworski

Editorial: Prentice Hall

Tutorial de JAVA Online (Sun) http://java.sun.com/docs/books/tutorial/

Bibliografía Complementaria

Aprendiendo JAVA en 21 días – Lemay Cadenhead - Prentice Hall – ISBN 9-701-70229-8

REGULARIDAD
Asistencia (75% mínimo)

Trabajos Prácticos

Trabajo práctico 1, 2 y 3 a entregar antes del 25 de octubre

Evaluaciones Parciales

Primer parcial

Recuperatorio primer parcial

Segundo parcial

Recuperatorio segundo parcial

EVALUACION Y PROMOCION

Promoción indirecta

CRONOGRAMA
Clase Nº 1
Teórica
-Conceptos generales de OO.
-Surgimiento de la OO: Orientación a procesos, Orientación a Datos y Orientación a Objetos.
-Concepto de Clase, Objeto, Atributos, Métodos.


Clase Nº 2
Práctica
- Ejemplos de aplicaciones en java.


Clase Nº 3
Teórica
-Herencia.
-Polimorfismo.
-Estándar UML.
-Modelo de funcionamiento del software Orientado a Objetos. Modelo de responsabilidad y Colaboración.


Clase Nº 4
Teórica
-Descripción del Lenguaje. Origen
-Características: Multiplataforma. Orientado a Objetos. Multihilo. Seguro. ByteCode. Excepciones. La MaquinaVirtual


Clase Nº 5
Teórica
El recolector de Basura.
-JAVA vs. C++.
-El SDK. Descripción de contenido y Versiones.
-Glosario de Términos comunes en el mundo JAVA.


Clase Nº 6
Teórica/Práctica
-Instalación del SDK (Windows y Linux). La descripción de la estructura de directorios.
-Variables de entorno.
-Escribir, compilar y ejecutar el primer programa en JAVA.
-Uso de las principales herramientas del SDK.
-Descripción del entorno de edición (IDE), compilación y ejecución (JRE) en aplicaciones JAVA.-


Clase Nº 7
Práctica
Práctica de compilación y ejecución de programas en JAVA


Clase Nº 8
Teórica
-Partes de una clase.
-Declaración e instanciación de una clase.
-Declaración de atributos y Métodos. Modificadores de los miembros de una clase.


Clase Nº 9
Teórica
-Declaraciones de Constructores. Constructor por defecto.
-Sobrecarga de constructores
-Sentencias Import y Package.
-Uso de la documentación de las API.


Clase Nº 10
Teórica
-Autodocumentación del código fuente. Comentarios. JavaDoc.
-Bloques de código.
-Identificadores.
-Palablas reservadas.
-Tipos primitivos de dato: boolean, char, byte, short, int, long, double y float.
-Wrapers (clases equivalentes).


Clase Nº 11
Teórica/Práctica
-Conversiones de tipo.
-Variables de referencia. La referencia This.


Clase Nº 12
Teórica/Práctica
-Expresiones. Operadores. Presedencia de operadores.
-Estructuras de control condicionales. IF-ELSE. SWITCH.
-Estructuras repetitivas. FOR. WHILE. DO-WHILE. Sentencias de control de estructuras repetitivas. BREAK. CONTINUE.


Clase Nº 13
Teórica/Práctica
-Entrada/salida por consola


Clase Nº 14
Teórica/Práctica
-Trabajo Práctico


Clase Nº 15
Teórica/Práctica
Evaluación parcial nro 1


Clase Nº 16
Teórica
-Declaración de arreglos.
-Creación de arreglos en memoria.
-Inicialización.
-Arreglos multidimensionales.
-Rangos. Redimensionamiento dinámico.
-Copia de arreglos.


Clase Nº 17
Práctica
-Trabajo Práctico


Clase Nº 18
Teórica
-Codificación. Restricciones. Recomendaciones.
-Polimorfismo.
-Operador INSTANCEOF.
-Sobrecarga y sobre escritura de métodos y Constructores.
-Invocación de constructor de la superclase. SUPER().
-La clase OBJECT. El método EQUALS(). El método TOSTRING().


Clase Nº 19
Práctica
-Trabajo Práctico


Clase Nº 20
Práctica
-Trabajo Práctico


Clase Nº 21
Teórica
-Atributos y métodos “de clase”.
-Modificadores STATIC y FINAL.
-Clases Abstractas.
-Interfaces.
-Clases Internas.


Clase Nº 22
Práctica
Recuperatorio primer parcial


Clase Nº 23
Práctica
-Trabajo Práctico


Clase Nº 24
Teórica
-Concepto de Excepción.
-Manejo de excepciones. TRY CATCH. FINALLY.
-Categorías de excepciones. Excepciones frecuentes.
-Declaración de Excepciones.
-Definición de nuevas Excepciones.
-Sobre escritura de métodos que lanzan excepciones.


Clase Nº 25
Práctica
-Trabajo Práctico


Clase Nº 26
Teórica
-Concepto de Hilo (thread).
-Consideraciones de la programación multihilo.
-Creación de hilos. Ejecución de hilos.
-Estados de un objeto hilo.
-Control de hilos. Terminar, dormir, cambiar prioridad o dejar en espera a un hilo.


Clase Nº 27
Práctica
-Trabajo Práctico


Clase Nº 28
Práctica
-Trabajo Práctico


Clase Nº 29
Teórica/Práctica
System.getProperties. Clase PropertiesColecciones.
Ejemplos de uso.
Trabajo Práctico


Clase Nº 30
Teórica
-API AWT. Descripción de la API. Frame. Paneles. Layout.
-API AWT: Manejo de eventos.


Clase Nº 31
Práctica
-Trabajo Práctico


Clase Nº 32
Práctica
-Trabajo Práctico


Clase Nº 33
Teórica/Práctica
-Applets. Ciclo de vida de un applet.
- Ejemplos


Clase Nº 34
Práctica
-Trabajo Práctico


Clase Nº 35
Teórica
- API JDBC.


Clase Nº 36
Práctica
-Trabajo Práctico


Clase Nº 37
Práctica
-Trabajo Práctico


Clase Nº 38
Teórica
-APIs para Networking. Aplicación Cliente y Servidor sobre TCP/IP.


Clase Nº 39
Teórica/Práctica
-APIs para Networking. Aplicación Cliente y Servidor sobre TCP/IP.
- Aplicación de ejemplo


Clase Nº 40
Práctica
-Trabajo Práctico


Clase Nº 41
Práctica
Segunda evaluación parcial


Clase Nº 42
Práctica
-Trabajo Práctico


Clase Nº 43
Práctica
-Trabajo Práctico


Clase Nº 44
Práctica
Recuperatorio Segundo parcial


Clase Nº 45- hasta final de año
Práctica
Desarrollo de una aplicación completa aplicando todos los conceptos desarrollados a lo largo del curso