Skip to content

About

Bank Account Management System - A Java-based banking application implementing SOLID principles and clean code practices. Features include savings and checking accounts, interest calculations, transaction history, and secure money operations.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

24 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Bank Account Management System

A robust Java-based banking system that implements SOLID principles and design patterns.

Project Overview

This system manages bank accounts, transactions, and customer data with a focus on clean architecture and maintainable code.

Features

  • Account Management (Savings, Checking accounts)
  • Transaction Processing
  • Customer Management
  • Report Generation
  • Data Validation
  • Exception Handling

Technical Details

Architecture

  • MVC Pattern
  • Builder Pattern
  • Strategy Pattern
  • Factory Pattern

Design Principles

  • SOLID Principles
  • Clean Code
  • DRY (Don't Repeat Yourself)
  • KISS (Keep It Simple, Stupid)

Project Structure

src/ ├── model/ ├── builder/ ├── controller/ ├── view/ ├── service/ ├── exception/ ├── util/ └── main/

Getting Started

Prerequisites

  • Java JDK 11 or higher
  • Any Java IDE (IntelliJ IDEA, Eclipse, etc.)

Installation

  1. Clone the repository
git clone [your-repo-url]
  1. Open the project in your IDE
  2. Run BankApplication.java

Usage

The system provides following operations:

Account Operations

  1. Create new account
    • Savings Account
    • Checking Account
  2. View account details
  3. Make transactions
    • Deposit
    • Withdraw
    • Transfer

Report Operations

  1. View account statement
  2. View transaction history
  3. Generate monthly report

Menu Options:

  1. Create Account
  2. View Account
  3. Make Transaction
  4. Generate Report
  5. Exit

Contributing

## Contributing
1. Fork the project
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

### Coding Standards
- Follow Java naming conventions
- Write clear commit messages
- Add comments for complex logic
- Write unit tests for new features

License

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

Author

## Author
[Mustafa BİRCAN]
- GitHub: [mustafa-bircan]
- LinkedIn: [linkedin.com/in/mstfbrcn]

About

Bank Account Management System - A Java-based banking application implementing SOLID principles and clean code practices. Features include savings and checking accounts, interest calculations, transaction history, and secure money operations.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages