Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Haga lo que hicimos en aula: proyecto con orientación a objetos

Aquí est el código que hice a la par escuchando el video :D Clase Pelicula:

public class Pelicula {
    String nombre;
    int fechaDeLanzamiento;
    int duracionEnMinutos;
    boolean incluidoEnElPlan;
    double sumaDeLasEvaluaciones;
    int totalDeEvaluaciones;

    void muestraFechaTecnica(){
        System.out.println("El nombre de la película es: " + nombre);
        System.out.println("Su fecha de lanzamiento es: " + fechaDeLanzamiento);
        System.out.println("Dureción en minutos: " + duracionEnMinutos);
    }

    void evalua(double nota){
        sumaDeLasEvaluaciones += nota;
        totalDeEvaluaciones ++;
    }

    double calculaMedia () {
        return sumaDeLasEvaluaciones / totalDeEvaluaciones;
    }
}

Clase Principal

public class Principal {
    public static void main(String[] args) {
        Pelicula miPelicula = new Pelicula();
        miPelicula.nombre = "Encanto";
        miPelicula.fechaDeLanzamiento = 2021;
        miPelicula.duracionEnMinutos = 120;

        miPelicula.muestraFechaTecnica();
        miPelicula.evalua(7.8);
        miPelicula.evalua(9.8);
        System.out.println(miPelicula.sumaDeLasEvaluaciones);
        System.out.println(miPelicula.totalDeEvaluaciones);
        System.out.println(miPelicula.calculaMedia());

        Pelicula otraPelicula = new Pelicula();
        otraPelicula.nombre = "Shrek";
        otraPelicula.fechaDeLanzamiento = 2001;
        otraPelicula.duracionEnMinutos = 89;

        otraPelicula.muestraFechaTecnica();
        otraPelicula.evalua(7.8);
        otraPelicula.evalua(9.8);

        System.out.println(otraPelicula.sumaDeLasEvaluaciones);
        System.out.println(otraPelicula.totalDeEvaluaciones);
        System.out.println(otraPelicula.calculaMedia());
    }
}
1 respuesta

Hola Diego, espero que estés bien

¡Qué bueno que estás siguiendo las lecciones y aplicando lo aprendido! Tu código parece estar muy bien encaminado según las instrucciones de la actividad. Has creado correctamente la clase Pelicula con los atributos y métodos necesarios, y también la clase Principal para ejecutar el programa.

Aquí hay algunos puntos que podrías considerar para mejorar o verificar:

  1. Encapsulamiento: Aunque no es obligatorio en este ejercicio, es una buena práctica hacer que los atributos de una clase sean privados y acceder a ellos mediante métodos getters y setters. Esto ayuda a proteger los datos y a mantener la integridad del objeto.

    public class Pelicula {
        private String nombre;
        private int fechaDeLanzamiento;
        private int duracionEnMinutos;
        private boolean incluidoEnElPlan;
        private double sumaDeLasEvaluaciones;
        private int totalDeEvaluaciones;
    
        // Métodos getters y setters aquí
    }
    
  2. Validación de datos: Al evaluar una película, podrías considerar agregar una validación para asegurarte de que la nota esté dentro de un rango válido (por ejemplo, entre 0 y 10).

  3. Pruebas adicionales: Podrías probar con más películas y evaluaciones para asegurarte de que el cálculo de la media y la acumulación de evaluaciones funcionan correctamente.

  4. Comentarios: Añadir comentarios en tu código puede ayudarte a ti y a otros a entender mejor lo que hace cada parte del programa.

Tu implementación parece estar en línea con lo que se pidió en la actividad. Continúa explorando y experimentando con el código, eso te ayudará a afianzar tus conocimientos en programación orientada a objetos.

Espero haber ayudado y ¡buenos estudios!