Programación II - Universidad Católica Argentina

advertisement
Pontificia Universidad Católica Argentina
“SANTA MARÍA DE LOS BUENOS AIRES”
Facultad de Ciencias Fisicomatemáticas e Ingeniería
Programa de Programación II.
Prof. María Feldgen
Carrera: Ingeniería en Informática
Ubicación en el Plan de Estudios : 3 er Año , cuatrimestral
Carga Horaria : 8 hs de 45 minutos / semana ( 15 clases )
Objetivos:
Al terminar el curso el alumno estará en condiciones de programar aplicaciones en
Java, comprender los principios de la programación orientada a objetos e integrar
en sus aplicaciones clases, objetos y componentes disponibles. El alumno
comprenderá las restricciones y metodologías asociadas a la construcción de
interfaces visuales
Programa Analítico:
Introducción al lenguaje Java. (1 clase) Principios del lenguaje de programación
Java. La máquina virtual Java. Portabilidad entre plataformas. Instalación y uso en
cada plataforma. Modelo dinámico de carga de clases.
Paradigma de Programación orientada a objetos. (1 clase) Conceptos de tipo
de dato abstracto (TDA). Abstracción, encapsulamiento y ocultamiento.
Especificación de un TDA. Variantes e invariantes de algoritmos. Cifras de mérito
para el diseño e implementación de un TAD (acople y cohesión). Delegación o
herencia.
Programación orientada a objetos en Java.(1 clase) Introducción a los
conceptos de clase, objeto, herencia, interfaz y paquete en Java. Métodos, mensajes,
clases dinámicas y estáticas. interacción entre objetos. Librería de clases. Relación
entre objetos, clases y archivos Java. Objetos y clases. Tipos de datos primitivos y
de referencia. Arreglos y arreglos multidimensionales. Boxing. Introducción al
manejo de excepciones. Entrada/salida simple basada en interfaz de usuario con
ventanas.
Análisis y diseño orientado a objetos.(4 clases) Repaso de diagramas UML y
Pontificia Universidad Católica Argentina
“SANTA MARÍA DE LOS BUENOS AIRES”
Facultad de Ciencias Fisicomatemáticas e Ingeniería
formalización. Análisis de requerimientos: Casos de Uso y diagrama de clases
inicial. Análisis: diagramas de robustez o de objetos , diagrama de clases y
paquetes. Diseño: diagramas de secuencia y de colaboración. Diseño Detallado:
Técnicas de especificación de métodos. Uso de los diagramas en el framework de
Java. Anotaciones y documentación en el código.
Herencia y polimorfismo.(1 clase) Extensión de clases y objetos. Modelización
de comportamiento. Sobrecarga y polimorfismo. Uso en el diseño. Organización de
objetos y clases múltiples. Clases abstractas y métodos. Patrón de diseño:
Contenedor. Creación y uso de Interfaces. Patrón de diseño: Observador.
Excepciones. Jerarquías.
Interfaz gráfica de usuario (GUI).(4 clases) Principios generales de uso y diseño.
Manejo de objetos en la GUI. Administradores de disposición (Layout Manager).
Necesidad y uso. Eventos. Botones, casillas de activación y botones de opción.
Selectores, listas y cuadros de lista desplegables. Gráficos, imágenes, texto y
fuentes. Menús, cuadros de diálogo y ventanas. Barras de progreso, barras de
desplazamiento, separadores y cuadros de Desplazamiento. Tratamiento y ajuste
de imágenes. Patrón de diseño: MVC (Model View Controller: Modelo Vista
Controlador).
Framework de Colecciones y Genericidad.(1 clase) Colecciones.y mapas.
Iteradores y comparadores. Implementaciones de propósito general y "wrappers".
Implementaciones abstractas. Uso de colecciones genéricas. Uso de tipos de
parámetros en clases genéricas. Refactorización.
Hebras o hilos de control en Java (Threads).(1 clase) Introducción a hebras.
Comparación con procesos. Ciclo de vida de una hebra. Diseño de una hebra sus
subclases e interfaces. Control de una hebra y establecimiento de prioridades.
Sincronización y el problema de los recursos compartidos. Restricciones.
Comunicación entre hebras.
Bibliografía:
Documentación de Java de SUN: http://java.sun.com/javaSE/6/docs.
Java. Cómo programar. Deitel, P. J. , Deitel, H. M. , 7º edición, Pearson Education,
2008.
Programación en Java 5.0. Cohoon, J. , Davidson, J., Mc. Graw Hill, 2006.
Pontificia Universidad Católica Argentina
“SANTA MARÍA DE LOS BUENOS AIRES”
Facultad de Ciencias Fisicomatemáticas e Ingeniería
Metodología de enseñanza
Exposición teórica de conceptos y análisis de casos. Comparación de técnicas e
implementaciones, con trabajo de campo y trabajos prácticos de aplicación.
Modalidad de Evaluación Parcial
Preguntas teóricas y resolución de ejercicios prácticos. En la evaluación parcial se
evaluarán la programación y la aplicación de los contenidos que corresponden a
las unidades del programa analítico.
Modalidad de Evaluación Final
Por proyecto en grupos de 2 a 3 personas de una aplicación completa con su
correspondiente análisis y diseño con los diagramas UML, especificación de
métodos e implementación en lenguaje Java. Se evaluará la completitud de cada
una de las partes solicitadas del trabajo grupal y se harán preguntas orales
individuales a los integrantes del grupo.
Descargar