5.8.4.4 Programación Orientada a Objetos I: Fundamentos (14 horas) [Habilidades AG-C09,AG-C12]

Referencias Bibliográficas: [Stroustrup, 2013,Josuttis, 2019]

Temas

  1. Definición de clases: campos, métodos y constructores.
  2. Subclases, herencia (incluyendo herencia múltiple) y sobrescritura de métodos.
  3. Despacho dinámico: definición de llamada a método.
  4. Subtipado:
    1. Polimorfismo de subtipos; conversiones ascendentes (upcasts) implícitas en lenguajes tipados.
    2. Noción de reemplazo conductual: los subtipos actúan como el supertipo.
    3. Relación entre subtipado y herencia.
  5. Clases y objetos en C++.
  6. Constructores y destructores.
  7. Especificadores de acceso y encapsulamiento.
  8. Jerarquías de herencia.
  9. Polimorfismo y funciones virtuales.

Aprendizaje esperado (Learning Outcomes)

  1. Componer una clase a través del diseño, implementación y prueba para cumplir con los requisitos de comportamiento [Usar]
  2. Construir una jerarquía de clases simple utilizando subclases que permita reutilizar código para subclases distintas [Usar]
  3. Predecir y validar el flujo de control en un programa usando despacho dinámico [Evaluar]
  4. Diseñar clases en C++ con encapsulamiento adecuado [Usar].
  5. Implementar jerarquías de herencia para reutilización de código [Usar].



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