Hola, dentro del repositorio en la clase ATM.java, he podido apreciar que según el botón del keypad se crea una transacción diferente, y en cierto caso (3) se realiza otra función, screen.setSize
Entiendo que el objetivo es crear una transacción dependiendo lo que escoja el usuario en tiempo de ejecución, por lo que se puede aplicar el patrón Strategy para englobar todo lo que se desea realizar (crear transacción y operaciones)
Se lo puede hacer de la siguiente manera:
Dentro de la clase ATM, crear un atributo context que almacenará el objeto de tipo Strategy, y cada estrategia concreta detallará los pasos a realizar en caso de seguir ese camino.
Comparto diagrama de clases:

Saludos
Hola, dentro del repositorio en la clase ATM.java, he podido apreciar que según el botón del keypad se crea una transacción diferente, y en cierto caso (3) se realiza otra función, screen.setSize
Entiendo que el objetivo es crear una transacción dependiendo lo que escoja el usuario en tiempo de ejecución, por lo que se puede aplicar el patrón Strategy para englobar todo lo que se desea realizar (crear transacción y operaciones)
Se lo puede hacer de la siguiente manera:
Dentro de la clase ATM, crear un atributo context que almacenará el objeto de tipo Strategy, y cada estrategia concreta detallará los pasos a realizar en caso de seguir ese camino.
Comparto diagrama de clases:

Saludos