Programación 2‎ > ‎

Programa

Contenidos Programación II

Unidad 1: Conceptos básicos de la Programación Orientada a Objetos
Repaso de los conceptos de Programación I y su relación con la POOReusabilidad y Modularidad. Objetos. Instancias. Clases. Mensajes. Métodos. Variables de instancia. Creación y destrucción de objetos. Igualdad e identidad.

Unidad 2: Anatomía de clases

Herencia. Especialización y Generalización. Superclase / Subclase. Redefinición de métodos. This y Super. Calificación del acceso a variables, métodos y clases. Paquetes. Métodos y variables de clase. Tipos de relaciones. Asociación. Agregación. Composición. Clases Abstractas y Concretas. Tipos de métodos: abstractos, bases, hooks, y templates. Interfaces. Concepto herencia múltiple. Clases Abstractas Vs Interfaces. Composición vs. Herencia.

Unidad 3: Conceptos avanzados de la Programación Orientada a Objetos

Concepto de Polimorfismo. Binding estático vs. dinámico. Referencias polimórficas. Flexibilidad y extensibilidad mediante Interfaces y Clases Abstractas. Tratamiento de errores en lenguajes OO. Excepciones. Tratamiento de excepciones. Fundamentos del manejo de excepciones. Uso de try y catch. Propagación de una excepción.

Unidad 4: Patrones de diseño

Introducción a los patrones de diseño. Problemas de diseño y cómo los patrones abordan estos problemas. Patrones de diseño estructurales: composite, decorator. Patrones de diseño comportamentales: strategy, state, observer, iterator, command

Unidad 5: Buenas y malas prácticas de diseño

Errores comunes en diseños Orientado a Objetos.  Herencia de implementación – Clase Vs Instancia – Buen diseño, mala implementación. Bad Smell. Malas prácticas de diseño Orientado a Objetos. Abuso de patrones. Sobre diseño.

Unidad 6: Frameworks de aplicaciones interactivas

Frameworks de aplicaciones OO interactivas. Diseño e instanciación. "Model-View-Controller'' (MVC). "Abstract Window Toolkit'' (AWT). Swing: componentes, administradores de layout y tratamiento de Eventos. 

Comments