Wpis z mikrobloga

Hej
Prośba o codereview. Piszę na zaliczenie grę w statki.

Opis ogólny co gdzie i jak:

Pakiety:
ai-boty
game - publiczne api modułu gry
game.logic - implementacja interface gry
view - nieśmieszny żart, czyli moja próba podpięcia javyFX do projektu (nie używam za bardzo FX dlatego wyszło jak wyszło...)

Najbardziej zależy mi na ocenie części "serwerowej" czyli samej logiki gry. Czy ma sens i czy trzyma się jakoś kupy.

Link do gita https://github.com/krasnoludkolo/Battleship

#codereview #java #programowanie #naukaprogramowania
  • 29
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@krasnoludkolo: Tak na początek to bym trochę inaczej zamodelował PlayerBoard. Obecnie masz:

PlayerBoard -> ships -> coordinates, czyli, że Board agreguje statki, a statki mają elementy, które zawierają koordynaty, na których się znajdują.
Jest to trochę nielogiczne, ponieważ tak naprawdę ShipElement nie powinien wiedzieć gdzie się znajduje, bo to nie jego sprawa jest, tylko boarda - w sensie, jak spojrzysz na boarda, to widzisz boarda, na którym masz statki na konkretnych koordynatach.

Proponuję
  • Odpowiedz
@krasnoludkolo: Ok, zapomniałem o tej części. To możesz np zamodelować to tak:
PlayerBoard -> Map -> Ship. Czyli - Na PlayerBoardzie masz mapę koordynatów, na których leżą ShipElementy. I te shipelementy wskazują na ship, którego są częścią.

Możesz np zrobić to też tak:
PlayerBoard -> Ship -> Map, czyli trochę wariacja na temat Twojego oryginalnego designu, tylko imo lepsza bo ShipElement nie wie na którym koordynacie się znajduje, tylko statek
  • Odpowiedz