Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementación del Patrón Observer en la Clase Bank #2

Open
gabsjimz opened this issue Dec 15, 2023 · 0 comments
Open

Implementación del Patrón Observer en la Clase Bank #2

gabsjimz opened this issue Dec 15, 2023 · 0 comments

Comments

@gabsjimz
Copy link

Descripción:
En la implementación actual de la clase Bank, se han identificado oportunidades para mejorar la flexibilidad y extensibilidad al aplicar el patrón Observer. Actualmente, la clase Bank realiza operaciones sobre las cuentas bancarias, pero no notifica a los clientes interesados sobre cambios en el estado de las cuentas.

Solución Propuesta:
Crear una interfaz BankObserver que defina el método update(BankAccount account) para manejar las notificaciones.
Modificar la clase Bank para que mantenga una lista de observadores (observers) y tenga métodos para agregar, remover y notificar a los observadores.
Crear clases concretas que implementen la interfaz BankObserver para manejar diferentes tipos de notificaciones, como EmailNotification, SMSService, etc.
Modificar los métodos deposit y withdraw en la clase Bank para notificar a los observadores después de realizar las operaciones en las cuentas.

Beneficios Esperados:
Desacoplamiento de la lógica de notificación.
Facilidad para agregar nuevos tipos de notificaciones sin modificar la clase Bank.
Flexibilidad para personalizar la lógica de notificación en clases específicas (por ejemplo, enviar correos electrónicos, mensajes de texto).

Pasos para la Implementación:
Crear la interfaz BankObserver con el método update.
Modificar la clase Bank para gestionar observadores.
Implementar clases concretas que implementen BankObserver para manejar diferentes notificaciones.
Modificar los métodos deposit y withdraw para notificar a los observadores.

Captura de pantalla 2023-12-15 a las 5 39 03 p m
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant