Financial Framework
A simple framework that provides abstraction for financial applications such as bank or credit card applications. The UML design is under UML folder. The design provides more details on the struture of the framework.
To run this project, simply clone the repository and run FinCo.java
.
- Java 8
Abstract factory pattern is used for the instantiation of a set of dependent group of objects to achieve inversion of control (IOC) for the framework. Abstract factory pattern is used to inject dependencies (DI) for different customers, accounts, and DAOs.
Singleton pattern is used to hold single instances of DAO, Factory and Customer.
This pattern provides the single abstraction of customer for person and organization as a Party.
This pattern abstracts Different type of account can have the single abstraction of account and can operate different account related operations.
This pattern facilitates the iteration of a list of customers from DAO.
This pattern is used to provide single command like functionality, and undo-redo (TODO, not yet implemented here) features. It provides the abstraction for actions such as add account, add interest, deposit money, withdraw money, etc.
This pattern provides the choice of strtegy for different types of report generation such as monthly billing report, account summary report, etc.
This pattern is used to notify views of any change in the accounts or customers.
- Maven - Dependency Management
- Intellij Idea - IDE
- StarUML - UML Class and Sequence Dragramming
- Bishal Paudel - BishalPaudel
- Akash KC
- Devi Bahadur Khadka - DevKhadka
See also the list of contributors who participated in this project.
This project is created for educational and learning purposes only. Until this time, this project cannot be used for commercial purposes. We hope to continue and improve this project in the future.
This project is licensed under the MIT License - see the LICENSE.md file for details