[Refactor] Tile besitzt Type & Value direkt (keine TileIdentity-Resource) #21

Closed
opened 2026-02-05 15:57:38 +00:00 by FlorianReetz · 1 comment
Owner

Aktuell werden TileType und TileValue über eine separate Resource (TileIdentity)
abgebildet. Diese Abstraktion bringt keinen Mehrwert, da ein Tile niemals ohne
Type und Value existiert und diese Werte nicht austauschbar sind.

Die Resource erschwert Tests, erhöht die Kopplung und verkompliziert den
BoardManager unnötig.

Ziel:

  • Tile besitzt tile_type und tile_value als Membervariablen
  • TileIdentity-Resource wird entfernt
  • BoardManager erstellt Tiles ohne Identität (DEFAULT/DEFAULT)
  • Zuweisung von Type/Value erfolgt später über eine separate Injection-Logik

In diesem Issue:

  • Entfernen von TileIdentity
  • Einführung von TileType- und TileValue-Enumns im Tile
  • Anpassung von Tile, BoardManager und Tests
  • DEFAULT-Werte für Type und Value (Index 0)

Nicht Teil dieses Issues:

  • Randomisierung oder Spielregeln
  • Matching-Logik
  • UI / Visuals

Akzeptanzkriterien:

  • Tile kann ohne weitere Initialisierung existieren (DEFAULT/DEFAULT)
  • Alle bestehenden Tests laufen grün
  • Keine neue Warnungen im Projekt
  • BoardManager funktioniert unverändert aus Sicht der API

Tests:

  • Tile-Unit-Tests decken Type/Value als Member ab
  • BoardManager-Tests berücksichtigen die neue Initialisierung
Aktuell werden TileType und TileValue über eine separate Resource (TileIdentity) abgebildet. Diese Abstraktion bringt keinen Mehrwert, da ein Tile niemals ohne Type und Value existiert und diese Werte nicht austauschbar sind. Die Resource erschwert Tests, erhöht die Kopplung und verkompliziert den BoardManager unnötig. Ziel: - Tile besitzt `tile_type` und `tile_value` als Membervariablen - TileIdentity-Resource wird entfernt - BoardManager erstellt Tiles ohne Identität (DEFAULT/DEFAULT) - Zuweisung von Type/Value erfolgt später über eine separate Injection-Logik In diesem Issue: - Entfernen von TileIdentity - Einführung von TileType- und TileValue-Enumns im Tile - Anpassung von Tile, BoardManager und Tests - DEFAULT-Werte für Type und Value (Index 0) Nicht Teil dieses Issues: - Randomisierung oder Spielregeln - Matching-Logik - UI / Visuals Akzeptanzkriterien: - [x] Tile kann ohne weitere Initialisierung existieren (DEFAULT/DEFAULT) - [x] Alle bestehenden Tests laufen grün - [x] Keine neue Warnungen im Projekt - [x] BoardManager funktioniert unverändert aus Sicht der API Tests: - [x] Tile-Unit-Tests decken Type/Value als Member ab - [x] BoardManager-Tests berücksichtigen die neue Initialisierung
FlorianReetz changed title from [Refactor]: Tile Klasse und TileIdentity Resource zusammenführen to [Refactor] Tile besitzt Type & Value direkt (keine TileIdentity-Resource) 2026-02-05 17:12:35 +00:00
FlorianReetz added reference refactor/21-tile-members-remove-identity-resource 2026-02-06 13:58:58 +00:00
Author
Owner

Ist bereit für Review.

Ist bereit für Review.
Sign in to join this conversation.
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Headframe_Studio/MamaMahjong#21
No description provided.