GithubHelp home page GithubHelp logo

ssoad / bankingsystem Goto Github PK

View Code? Open in Web Editor NEW
117.0 2.0 84.0 736 KB

Bank Management System using Java Swing

Java 100.00%
banking-applications bank-management-system java-swing-applications java-project object-oriented-programming

bankingsystem's Introduction

Banking System - Java Swing Project

Description

The Banking System is a Java Swing application that simulates basic banking operations. It provides a user-friendly interface for managing accounts, transactions, and other essential banking functions.

Features

  • Account creation and management
  • Deposit and withdrawal transactions
  • Balance inquiry
  • Transaction history
  • User-friendly GUI with Java Swing

Screenshots

Screenshot 1 Screenshot 2

Technologies Used

  • Java
  • Java Swing for GUI

Installation

  1. Clone the repository:
    git clone https://github.com/your-username/banking-system.git
    cd banking-system
    
  2. Run Project
    javac Main.java
    java Main

Usage

  1. Launch the application.
  2. Follow the on-screen instructions to perform banking operations.

Contribution

Contributions are welcome! If you'd like to contribute to the project, please follow these steps:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/new-feature)
  3. Commit your changes (git commit -m 'Add new feature')
  4. Push to the branch (git push origin feature/new-feature)
  5. Create a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Thanks to Java for the programming language.
  • Special thanks to Java Swing for the GUI components.
  • Feel free to customize the content according to your project's specific details. Add more sections or information as needed.

bankingsystem's People

Contributors

ssoad avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

bankingsystem's Issues

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

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

design suggestion

Hello! I suggest to follow decorator design pattern on Bank package instead of using simple inheritance. Thus improving code extensibility and maintainability if necessary.

image

Webswing

Hi, did you tested your banking system on Webswing?
Thank you for the info
Igor

design suggestion

Hello! You could use composite design pattern if you wish to create more complex BankAccount objects and treat them all in the same way. Here's a reference class diagram.

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.