Playing Cards is FUN!
- Eric Langer (Docs for Code)
- Felix Ossmann (Testing)
- Hannes Brottrager (Logging/Data)
- Markus Hilbert (Lead/Architecture)
Create a small but extendable project in Java using OOP concepts and prozedures.
- if/else
- case
- while/for
- early return
- Encapsulation
- Inheritance
- [~] Abstraction
- Interfaces
- Types
- Enumeration
- Primitive Types
- Complex Types
- Classes
- Constructors
- Setters & Getters
- Modifiers
- public
- private
- protected
- abstract
- final
- Return value Type
- Scanner (Terminal input)
- StringBuffer
- [~] File I/O
- [~] Date
- [~] Logging via java.util.logging.*
- [~] Testing via "JUnit"
- Code versioning via GIT
- Write a project documentation in MarkDown
- [~] Write a code documentation with javadoc
- a (G)UI
- a Gaming AI to play against
- a production ready application
Base idea of this project is to create an extensible Base of (abstract) Types, to create and play several different Card Games. Each Game implements it's own set of rules how
Possible Games are: (List of Card Games by Amount of Cards)
- BlackJack (17+4)
- Classic Uno
- Schnapsen (Cards could be "Französisch" or "DoppelDeutsch")
- Schnapsen
- BauernSchnapsen
- TalonSchnapsen (DreierSchnapsen)
- Rommé
- etc
Is an abstract class to represent a gaming card in a Deck of Cards.
Is a set of Cards. Each Card is unique in most decks.
Is a Person with a PlayerName and a Hand of Cards.
Is a List of Cards taken by the Player.
The specific game itself. Depending on the game, rules, decks, amount of players, ... are different.
- NoPlayerSet
- TooManyPlayers
- NotEnoughPlayers
- PlayerNotOldEnough
- NoMoreCardsOnDeck
- DeckIsEmpty
... still to come on a more suffisticated implementation.
- cardgame
- src
- main/java/ddb/international
- card
- Card.java
- PokerCard.java
- images
- deck
- Deck.java
- PokerDeck.java
- cards
- uno.csv
- schnapsen.csv|.json
- person
- game
- Game.java
- PokerGame.java
- BlackJackGame.java
- card
- test
- CardTest.java
- PokerCardTest.java
- resources
- cards
- uno.csv
- schnapsen.csv|.json
- gamerules
- uno.md
- blackjack.md
- cards
- main/java/ddb/international
- src
- Hibernate (ORM)