Durchstich in Domäne hergestellt.

1. grundlegende Funktionalität zum Würfeln hergestellt, die einen Aufruf
von der TUI in die Fassade zur Domain und zurück demonstriert.
refactoringFassade
hummel 2024-05-14 08:56:27 +02:00
parent a470557422
commit cbe73a6c54
3 changed files with 25 additions and 4 deletions

View File

@ -1,5 +1,18 @@
package de.hs_mannheim.informatik.games.kniffel.domain; package de.hs_mannheim.informatik.games.kniffel.domain;
public class Würfel { public class Würfel {
private final int SEITEN;
public Würfel() {
this(6);
}
public Würfel(int seiten) {
this.SEITEN = seiten;
}
public int würfle() {
return 1 + (int)(Math.random() * SEITEN);
}
} }

View File

@ -1,5 +1,12 @@
package de.hs_mannheim.informatik.games.kniffel.facade; package de.hs_mannheim.informatik.games.kniffel.facade;
import de.hs_mannheim.informatik.games.kniffel.domain.Würfel;
public class KniffelApi { public class KniffelApi {
Würfel w = new Würfel();
public int würfle() {
return w.würfle();
}
} }

View File

@ -24,20 +24,21 @@ public class TuiMain {
mainLoop: mainLoop:
do { do {
System.out.println(); System.out.println();
System.out.println("Auswahlmöglichkeiten:"); System.out.println("Auswahlmöglichkeiten (Zifferneingabe):");
System.out.println("1 -> Würfeln");
System.out.println("9 -> Spiel beenden."); System.out.println("9 -> Spiel beenden.");
System.out.println(); System.out.println();
System.out.print("Eingabe > "); System.out.print("Eingabe > ");
switch (kb.nextInt()) { switch (kb.nextLine()) {
case 9 -> {break mainLoop;} case "1" -> System.out.println("Gewürfelt: " + api.würfle());
case "9" -> { break mainLoop; }
default -> System.out.println("Eingabe nicht erkannt, bitte wiederholen."); default -> System.out.println("Eingabe nicht erkannt, bitte wiederholen.");
} }
} while(true); } while(true);
System.out.println("Auf Wiedersehen!"); System.out.println("Auf Wiedersehen!");
} }
} }