La abstracción de la creación de la clase Account no me queda del todo clara. Creo que crear una clase account que englobe a dos roles d...

Francisco Javier Lamas Ferreiro

Francisco Javier Lamas Ferreiro

Pregunta
student
hace 5 años

La abstracción de la creación de la clase Account no me queda del todo clara. Creo que crear una clase account que englobe a dos roles diferentes dentro del proyecto no facilita, si no que hace más probable la posibilidad de equivocarse a la hora de implementar el propio código. La clase account indica una “cuenta” dentro del sistema. Pero luego hay que invocar correctamente el rol de cada usuario a nivel de codigo.

4 respuestas
para escribir tu comentario
    Irving Juárez

    Irving Juárez

    student
    hace 5 años

    Tiene todo el sentido del mundo la abstraccion Account, ya que si te das cuenta, hay dos cuentas, la de usuario y la de chofer o driver. Cada cuenta (account) tiene aspectos o atributos en comun, por eso la clase account es necesaria

    José Antonio Torres

    José Antonio Torres

    student
    hace 5 años

    Todo depende del nivel de abstraccion que necesita el sistema y lo que mejor conviene a la aplicacion que estas desarrollando. Hay un paradigma que se llama AHA (Avoid Hasty Abstractions), sugiero su lectura en el siguiente link AHA Programming.

    Luis Lira

    Luis Lira

    student
    hace 5 años

    La implementación de Account lo que hace es definir una clase base para que a partir de ahí esta se implemente y que todos los tipos de cuentas hereden esas propiedades. De hecho, Account perfectamente podría ser una clase abstracta para que no pueda ser instanciada, ya que solamente es la plantilla.

    También podría ser una interfaz, pero esto sería repetir cierto código, pero también obligaría a que implementes ciertas funcionalidades o métodos dentro de las clases hijas.

    El motivo por el que se debe instanciar el tipo de cuenta específico es porque realmente es el tipo que se necesita, y gracias a la clase Accounta, más delante podrías implementar nuevas propiedades o métodos que necesitas en todas las clases hijas y tendrías que hacerlo en un solo lugar y no en cada una de las clases.

    Alex Camacho

    Alex Camacho

    teacher
    hace 5 años

    Las clases deben de abordar las generalidades del sistema, con la herencia es que ahondamos en la especificidad. El ejemplo más común de la herencia es que tenemos la clase Animal, que es la clase padre de Mamifero y Oviparos, que a su vez de la clase Mamifero podemos desprender las clases: Placentarios, Marsupiales y Monotrema. Y así podemos continuar hasta llegar a lo especifico que sería el gatito que tengo de mascota.

    Saludos :)

Curso de Programación Orientada a Objetos

Curso de Programación Orientada a Objetos

La misión: lograr que la virtualidad sea idéntica a la realidad. El elegido para esta tarea: tú. Sé parte de la generación que logra cambiar el mundo a través de ideas innovadoras, porque la diferencia entre ser testigo del cambio y ser parte de él comienza con Platzi.

Curso de Programación Orientada a Objetos
Curso de Programación Orientada a Objetos

Curso de Programación Orientada a Objetos

La misión: lograr que la virtualidad sea idéntica a la realidad. El elegido para esta tarea: tú. Sé parte de la generación que logra cambiar el mundo a través de ideas innovadoras, porque la diferencia entre ser testigo del cambio y ser parte de él comienza con Platzi.