Programación Orientada a Objetos en Juegos: Guía Completa
Toca para girar · Desliza para navegar
14 tarjetas
Pregunta: ¿Cuál fue mi responsabilidad principal en el desarrollo del juego descrito?
Respuesta: Implementar los power-ups, los obstáculos y el viento del segundo nivel.
Pregunta: ¿Qué principios de programación apliqué para desarrollar las funcionalidades?
Respuesta: Herencia, polimorfismo, abstracción, reutilización de código y correcta distribución de responsabilidades entre objetos.
Pregunta: ¿Por qué diseñé una superclase PowerUp y qué comportamiento común implementé allí?
Respuesta: Porque todos los power-ups comparten posición, caen desde arriba, pueden ser empujados por el viento, desaparecen al llegar al suelo y producen un efe
Pregunta: ¿Qué método redefinen las subclases de PowerUp y por qué?
Respuesta: Redefinen únicamente el método efectoDeColision() porque es el único comportamiento que cambia entre ellas.
Pregunta: Menciona el efecto de cada subclase de PowerUp implementada: Mandarina, Calafate, Frutilla y Corazón.
Respuesta: Mandarina: aumenta temporalmente la velocidad del cuidador. Calafate: aumenta la velocidad. Frutilla: aumenta la velocidad y aparece solo en el nivel
Pregunta: ¿Cómo evité duplicar código entre los distintos power-ups?
Respuesta: Implementando el comportamiento común en la superclase PowerUp y dejando solo las diferencias (efectoDeColision) en las subclases.
Pregunta: ¿Qué estructura de clases creé para los obstáculos y por qué?
Respuesta: Una superclase Obstaculo con subclases Caca1, Caca2 y Caca3, porque todas las cacas comparten comportamiento (posición, caída, empuje por viento, desa
Pregunta: ¿Qué hace el método efectoDeColision() en la jerarquía de Obstaculo?
Respuesta: Reduce la velocidad del cuidador; las subclases solo redefinen la imagen correspondiente.
Pregunta: ¿Qué diferencia tiene Caca3 respecto a las otras cacas?
Respuesta: Caca3 aparece únicamente en el nivel 2.
Pregunta: Explica cómo usé el polimorfismo al procesar colisiones con power-ups y obstáculos.
Respuesta: En el objeto juego no se pregunta el tipo concreto; se envía powerUp.efectoDeColision() u obstaculo.efectoDeColision() y cada objeto responde según su