-
Objective - To create an casino simulation
-
Purpose - To gain familiarity with general object orientation and design principles
-
Description
- View the javadocs for the program to become better oriented with its design
https://zipcoder.github.io/casino.maven/docs/index.html
- Create a casino simulation by extending or removing the pre-built implementations.
- It is advised that you create additional methods and classes to mediate any foreseen shortcomings of the prebuilt assets.
- Enforce the following features in your system:
- Ensure a console-based interface is available to allow input from and output to the users
- Ensure the
Casinohas a selection of at least 6 implementation ofGameInterface. - Ensure
PlayerInterfaceis garbage collected upon completing a respectiveGameInterfaceSlotsPlayershould be garbage collected whenSlotsGameis garbage collected.BlackJackPlayershould be garbage collected whenBlackJackGameis garbage collected.
- Ensure all implementation of
PlayerInterfacehave reference to aCasinoAccountCasinoAccountshould not be garbage collected when aGameInterfaceis garbage collected.
- Ensure at least 6 different implementations of
GameInterfaceand a respectivePlayerInterfaceare defined. - Ensure at least 1 implementation of
GameInterfacedoes not involve gambling. - Ensure at least 3 implementations of
GameInterfaceinvolve gambling.- Enable the player to wager a
balancethat can be persisted throughout different games; when aGameInterfaceis garbage collected, the owner of thebalanceshould be able to play a new game with their newbalance.
- Enable the player to wager a
- Ensure all games which should support more than 1 player, have the ability to do so.
- Ensure there are at least 80% line coverage from testing the application.
- View the javadocs for the program to become better oriented with its design
-
Begin by implementing the
SlotsGame,SlotsPlayeras well asNumberGuessGameandNumberGuessPlayerprovided in thecom.github.zipcodewilmington.casino.gamespackage.
- To fork the project, click the
Forkbutton located at the top right of the project.
- Navigate to your github profile to find the newly forked repository.
- Copy the URL of the project to the clipboard.
- Clone the repository from your account into the
~/devdirectory.- if you do not have a
~/devdirectory, make one by executing the following command:mkdir ~/dev
- navigate to the
~/devdirectory by executing the following command:cd ~/dev
- clone the project by executing the following command:
git clone https://github.com/MYUSERNAME/NAMEOFPROJECT
- if you do not have a
- Ensure that the tests run upon opening the project.
- You should see
Tests Failed: ${number-of-tests} of ${number-of-tests} tests
- You should see
- Execute the command below to run JUnit tests from the command line.
mvn package -Dmaven.test.failure.ignore=true
- from a terminal navigate to the root directory of the cloned project.
- from the root directory of the project, execute the following commands:
- add all changes
git add .
- commit changes to be pushed
git commit -m 'I have added changes'
- push changes to your repository
git push -u origin master
- add all changes
- from the browser, navigate to the forked project from your github account.
- click the
Pull Requeststab. - select
New Pull Request
