Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kadiryazadzhi/softuni---bankmanagementsystem
π Solution for the "Bank Management System" practical project in C# π
https://github.com/kadiryazadzhi/softuni---bankmanagementsystem
csharp exercise softuni
Last synced: about 1 month ago
JSON representation
π Solution for the "Bank Management System" practical project in C# π
- Host: GitHub
- URL: https://github.com/kadiryazadzhi/softuni---bankmanagementsystem
- Owner: KadirYazadzhi
- License: mit
- Created: 2024-11-29T11:58:35.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-29T12:14:11.000Z (about 1 month ago)
- Last Synced: 2024-11-29T13:22:07.897Z (about 1 month ago)
- Topics: csharp, exercise, softuni
- Language: C#
- Homepage:
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π³ Bank Account Management System
Welcome to the **Bank Account Management System**, a console-based application for managing bank accounts. This system allows users to perform operations like deposit, withdrawal, balance check, transfer funds, and apply for loans. Itβs designed for learning and practicing object-oriented programming (OOP) principles in C#. π
## π **Project Description**
The project simulates a bank system where users can:
- Create and manage bank accounts
- Deposit, withdraw, and transfer funds
- Apply for loans and view their status
- Change passwords and close accountsIt is implemented in **C#**, using OOP concepts such as classes, methods, and properties.
### π₯ **Features**
- **Account Management**: Create, update, and close bank accounts πΌ
- **Transaction History**: View deposit and withdrawal records π§Ύ
- **Loan Management**: Apply for and repay loans πΈ
- **User Authentication**: Change passwords securely π
- **Multiple Accounts**: Handle multiple bank accounts for each user π## π **Technologies Used**
- **C# .NET**: For backend logic and OOP implementation π₯οΈ
- **Visual Studio**: IDE used for development π¨βπ»
- **Lists**: For storing user accounts, transactions, and loans π## π **Project Structure**
1. **BankAccount Class**:
- Manages user account information (balance, transactions, loans).
- Contains methods for depositing, withdrawing, and transferring money.2. **User Class**:
- Handles user login, password management, and account creation.3. **Main Program**:
- Provides a console interface for user interaction.
- Handles user input and displays results for account management.## π **How to Use**
1. **Clone the Repository**:
```bash
git clone https://github.com/your-username/bank-account-management-system.git
```
2. Open the Project:
- Open the ```.sln``` file in Visual Studio.3. Run the Application:
- The program will prompt you to create a new account or log in.
- Choose an action such as depositing money, viewing balance, or applying for a loan.4. Exit the Program:
- Type "exit" to close the application after you're done.## π **Available Features**
1. **Create Account** π: Input your username and password to create a new bank account.
2. **Deposit Funds** π°: Add money to your account by specifying the deposit amount.
3. **Withdraw Funds** π΅: Withdraw money from your account (must have sufficient balance).
4. **Check Balance** π: View your current account balance.
5. **Transfer Funds** πΈ: Transfer money between accounts by entering the recipientβs details.
6. **Apply for Loan** π³: Apply for a loan by entering the amount you wish to borrow.
7. **Repay Loan** π³β‘οΈπΈ: Repay a part of your loan by specifying the amount to pay back.
8. **Change Password** π: Update your account password securely.
9. **Close Account** β: Delete your account after all transactions are complete.
## π¦ **Installation & Setup**
1. **Pre-requisites**: Make sure you have the following installed on your system:
- [.NET SDK](https://dotnet.microsoft.com/download)
- [Visual Studio](https://visualstudio.microsoft.com/)2. **Running Locally**:
- Clone the repository using the command:
```
git clone https://github.com/KadirYazadzhi/SoftUni---BankManagementSystem.git
```
- Open the project in Visual Studio.
- Build and run the project.## β¨ **Future Improvements**
- Add a graphical user interface (GUI) for easier interaction π»
- Implement a database to store account information persistently ποΈ
- Improve security measures for account data encryption π
## π‘ **Project Insights**
This project is a practical example of managing multiple bank accounts and transactions using object-oriented principles in C#. It helps in understanding basic banking operations, data management, and secure user interactions.
## π **Credits**
This project is based on the **"Bank Account Management System"** exercise created by [Mario Zahariev](https://github.com/zahariev-webbersof/) for Python developers. However, I adapted the task and implemented it in C#. You can view the original task [here](https://github.com/zahariev-webbersof/python-fundamentals-09-2024-/blob/main/Bank%20Account%20Management%20System.md).
Special thanks to Mario Zahariev for providing a great foundational exercise.
## πΎ **Contribution**
Feel free to fork this repository and submit pull requests! Contributions are welcome if you have ideas for additional patterns, new features, or improved functionality.
## π **Contact**
If you have any questions or suggestions, feel free to reach out at:
- π§ Email: [email protected]
- π Portfolio: [Kadir Yazadzhi](https://kadiryazadzhi.github.io/portfolio/)---
π» Made with β€οΈ in C#
Happy Coding! π