https://github.com/blankeos/rockpaperscissors-oop-project
⭐ My final project for Object Oriented Programming written in Java. A rock, paper, scissors game system with an account authentication system, profiles, and leaderboards.
https://github.com/blankeos/rockpaperscissors-oop-project
Last synced: about 1 year ago
JSON representation
⭐ My final project for Object Oriented Programming written in Java. A rock, paper, scissors game system with an account authentication system, profiles, and leaderboards.
- Host: GitHub
- URL: https://github.com/blankeos/rockpaperscissors-oop-project
- Owner: Blankeos
- Created: 2021-01-28T11:31:08.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-01-29T02:30:23.000Z (over 5 years ago)
- Last Synced: 2025-02-13T08:41:36.353Z (over 1 year ago)
- Language: Java
- Size: 319 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rock Paper Scissors Game System
My final project for Object Oriented Programming written in Java. A rock, paper, scissors game system with an account authentication system, profiles, and leaderboards.
## Dependencies
RPSGameSystem.jar can't run without
- /imgs folder
- accounts.txt
- playerprofiles.txt
> The complete application without the source code is located in out/production/artifacts/RPSGameSystem_jar
## Design Patterns I used
I used MVC for separating the Data, Views, and Functionality. I used Mediator for simplifying communication between scripts by having only Controllers have reference to both Models and Views while other scripts only need to know about the Controllers. I used a mix of Factory and State pattern for Controllers by making them inherit from a base class and instantiating it whenever I need its functionality for a specific state. I used the Singleton for most of the Manager scripts in this application. They're not the cleanest implementations, however.
**Carlo Antonio Taleon**
BSCS-2A
[GitHub](https://github.com/Blankeos/)