6.10.4.9 PL/Programación Orientada a Objetos. (7 horas) [Nivel Bloom 3]

Referencias Bibliográficas: [Stroustrup, 2013]

Tópicos

  1. Diseño orientado a objetos.
  2. Encapsulación y ocultamiento de la información.
  3. Separación de comportamiento e implementación.
  4. Clases y subclases.
  5. Herencia (sobreescritura, despacho dinámico).
  6. Polimorfismo (polimorfismo de subtipo vs. herencia).
  7. Jerarquías de clases.
  8. Clases de tipo colección y protocolos de iteración.
  9. Representaciones internas de objetos y tablas de métodos.

Objetivos

  1. Justificar la filosofía de diseño orientado a objetos y los conceptos de encapsulación, abstracción, herencia y polimorfismo.
  2. Diseñar, implementar, probar y depurar programas simples en un lenguaje de programación orientado a objetos.
  3. Describir como los mecanismos de clases soportan encapsulación y ocultamiento de la información.
  4. Diseñar, implementar y probar la implementacion de la relación es-un IsKindOf entre objetos usando jerarquía de clases y herencia.
  5. Comparar y contrastar las nociones de sobrecarga y sobreescritura de métodos en un lenguaje de programación.
  6. Explicar la relación entre la estructura estática de una clase y la estructura dinámica de las instancias de dicha clases.
  7. Describir como los iteradores acceden a los elementos de un contenedor.

Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, Universidad Católica San Pablo, Arequipa-Peru
basado en el modelo de la Computing Curricula de IEEE-CS/ACM