Skip to content

Instantly share code, notes, and snippets.

@nivida
Created February 28, 2018 12:42
Show Gist options
  • Save nivida/f1123098b159795b43be42fdc7c637da to your computer and use it in GitHub Desktop.
Save nivida/f1123098b159795b43be42fdc7c637da to your computer and use it in GitHub Desktop.
challenge.md

Challenge

Small php based game

Es soll ein einfaches Spiel implementiert werden, das den folgenden Regeln folgt:

Jeder Spieler erhält fünf Karten, die er verdeckt vor sich auslegt. Jede Karte hat dabei eine andere von sechs Farben. Der Würfel zeigt keine Zahlen, sondern jeweils eine der sechs Farben. Es wird reihum gewürfelt. Würfelt ein Spieler eine Farbe, zu der er eine Karte besitzt, die noch verdeckt ist, dann dreht er diese Karte um. Hat ein Spieler alle Karten umgedreht, hat er gewonnen. Am Spiel sollen die drei Spieler Alice, Bob und Carol teilnehmen.

Das Spiel soll über einen AJAX Request gestartet werden. Anschliessend sollte der Spielverlauf und der Gewinner minimalistisch angezeigt werden. Für das senden eines AJAX Requests empfehle ich Ihnen auf JQuery zurückzugreifen.

Achten Sie generell auf minimale Schnittstellen und auf die Einhaltung des Single-Responsibility-Prinzips. (https://en.wikipedia.org/wiki/Single_responsibility_principle)

Gehen Sie in kleinen Schritten vor. Denken Sie zunächst an "Nouns and Verbs" und überlegen Sie sich, welche Klassen Sie implementieren möchten und welche öffentlichen Schnittstellen diese brauchen. Achten Sie auch auf das Naming und die Dateistrukturen.

Schritte:

  1. Clonen dieses Repository und erstelle einen Branch.
  2. Erstellen eines UMLs und kurze Besprechung des Models
  3. Umsetzung des Spiels anhand des UML Models.
  4. Implementieren der UI - "Good design is as little design as possible.", Dieter Rams
  5. Haben Sie die Aufgabe gelöst so erstellen Sie einen Pull Request und melden Sie sich bei uns.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment