archetype | title | author | points | hidden | sketch |
---|---|---|---|---|---|
assignment |
Blatt 09: Dojo-Dungeon & DevDungeon (Refactoring, Smells) |
Carsten Gips (HSBI) |
1 Punkt |
true |
true |
Ihr Code soll einheitlich formatiert und dokumentiert sein. Sie können beides prüfen:
./gradlew spotlessCheck
für die Formatierung und ./gradlew checkstyleMain
für die
Dokumentation1 mit Javadoc.2 Während Sie die Dokumentation bei Fehlern manuell anpassen
müssen (siehe Lektion "Javadoc"), können Sie mit ./gradlew spotlessApply
den Code
automatisch formatieren lassen - tun Sie das am besten vor jedem Commit.
(Verteilung: 10%, 5%, 10%, 5%, 10%, 5%)
tbd
Selbststudium: Intro Dungeon
(Verteilung: 20% Monster, 20% Refactoring)
Klonen Sie das Projekt Dungeon und laden Sie es in Ihrer IDE als Gradle-Projekt. Betrachten Sie das Sub-Projekt "dojo-dungeon". Dies ist ein von Studierenden erstelltes kleines Spiel mit vier Leveln, in denen Sie spielerisch Aufgaben lösen müssen - auf diesem Aufgabenblatt ist nur das dritte Level "Tempel der verlorenen Geheimnisse" relevant.
Starten Sie den Dojo-Dungeon mit ./gradlew dojo-dungeon:runDojoStarter
. Spielen Sie sich für
diese Aufgabe das dritte Level. Sie werden drei Räume finden: Im ersten Raum müssen Sie die
Monster besiegen, um einen Saphir zu finden und damit die Tür zum zweiten Raum zu öffnen. Dort
müssen Sie ein eigenes Monster erschaffen (in Java programmieren) und besiegen (Neustart des
Spiels erforderlich). Im dritten Raum werden Sie gebeten, ein Refactoring für eine bestimmte
Klasse zu machen, um diese Aufgabe zu lösen.
Stellen Sie im Praktikum Ihr Monster und dessen Fähigkeiten sowie auch alle einzelnen Refactoring-Schritte vor. Wenn Sie pro Schritt einen entsprechenden Commit erzeugen, können Sie sich bei der Vorstellung daran orientieren.
verwirrende Räume (Spielen, Refactoring: Namen, Methoden)
Klonen Sie das Projekt Dungeon und laden Sie es in Ihrer IDE als Gradle-Projekt. Betrachten Sie das Sub-Projekt "devDungeon". Dies ist ein von einem Studierenden erstelltes kleines Spiel mit mehreren Leveln, in denen Sie spielerisch verschiedene Aufgaben in-game und ex-game lösen müssen.
Starten Sie den DevDungeon mit ./gradlew devDungeon:runDevDungeon
. Spielen Sie sich für
diese Aufgabe durch das vierte Level ("Fog of War"). Sie werden einen ziemlich verwirrenden
Raum vorfinden - können Sie das Rätsel lösen (auch mit Code-Analyse)?
Betrachten Sie nun die Klasse XXX und nehmen Sie ein Refactoring vor. Stellen Sie im Praktikum alle einzelnen Refactoring-Schritte vor. Wenn Sie pro Schritt einen entsprechenden Commit erzeugen, können Sie sich bei der Vorstellung daran orientieren.