Referencias Bibliográficas: [Brookshear and Brylow, 2019b]
Temas
- Programación imperativa como subconjunto de la programación orientada a objetos.
- Diseño orientado a objetos:
- Descomposición en objetos que poseen estado y tienen comportamiento.
- Diseño de jerarquía de clases para modelado.
- Definición de clases: campos, métodos y constructores.
- Subclases, herencia (incluyendo herencia múltiple) y sobrescritura de métodos.
- Despacho dinámico: definición de llamada a método.
- Idiomas orientados a objetos para encapsulación:
- Privacidad, ocultación de datos y visibilidad de miembros de clase.
- Interfaces que revelan solo firmas de métodos.
- Clases base abstractas, rasgos (traits) y mixins.
Aprendizaje esperado (Learning Outcomes)
- Enumerar las diferencias entre los paradigmas de programación imperativa y orientada a objetos [Enumerar]
- Componer una clase a través del diseño, implementación y prueba para cumplir con los requisitos de comportamiento [Componer]
- Usar mecanismos de encapsulación orientados a objetos como interfaces y miembros privados [Usar]
Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM