Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

PROJEKT 1 (18 pkt)

Gra w czwórki. Czwórki to gra dla dwóch osób. Pierwszy gracz wybiera kolor, a następnie obie osoby na zmianę wrzucają kolorowe krążki w kolumny pionowej planszy o wymiarach 7 kolumn x 6 wierszy. Krążki spadają w dół i zajmują najniższe wolne miejsce w danej kolumnie. Celem gry jest umieszczenie czterech krążków w swoim kolorze w pionie, w poziomie lub po przekątnej. Wygrywa osoba, która zrobi to pierwsza. Tutaj jest link do gry.

Wymagania do tej gry są następujące:

  • Plansza składa się z siedmiu kolumn i sześciu wierszy. Początkowo wszystkie pola są puste.
  • Gracze wrzucają od góry krążki w kolumny. Jeśli kolumna jest pusta, wrzucony krążek spada w dół planszy. Krążki dodane do tej kolumny będą się znajdować nad tymi wcześniej wrzu- conymi.
  • Gra jest przeznaczona dla dwóch osób. Każdemu graczowi jest przypisany jeden kolor. Jedna osoba używa krążków czerwonych, a druga zielonych. Gracze wykonują ruchy na zmianę i za każdym razem wrzucają jeden krążek.
  • Program ma informować o zdarzeniach i błędach w grze. Dane wyjściowe powinny przedsta- wiać stan na planszy po każdym ruchu.
  • Gdy nie można dodać kolejnych krążków. Gra kończy się remisem.
  • Jeśli gracz dodał krążek i w ten sposób połączył więcej niż trzy krążki w swoim kolorze przylegające do siebie w pionowej linii, wygrywa.
  • To samo dzieje się, jeśli połączono krążki w linii poziomej.
  • To samo dzieje się, jeśli połączono krążki po stosie.
  • Tworzenie list rankingowych graczy: imię, punktacja, ilość wygranych itd

Pod ocenę będą brane pod uwagę następujące elementy:

    • (1 pkt) Kompilacja i uruchomienie bezbłędne projektu.
    • (4 pkt) Uwzględnienie powyższych wymagań.
    • (6 pkt) Przypadki testowe.
    • (1 pkt) Użycie różnych asercji.
    • (1 pkt) Uwzględnienie wyjątków.
    • (1 pkt) Zastosowanie biblioteki Hamcrest.
    • (1 pkt) Pokrycie kodu.
    • (1 pkt) Styl kodu.
    • (1 pkt) Zastosowanie metodyki TDD. ( ostatnie commity nie stostowaly sie do tej metody lecz byly wykonane w celu poprawienia test cover oraz sa one wykonane nowa technologia, ktora dopiero poznaje :) )
    • (1 pkt) Zastosowanie testów parametrycznych.

Ponadto dodatkowo pod uwagę będą brane następujące elementy:

    • (1 pkt) Użycie biblioteki AssertJ.
    • (1 pkt) Skonfigurowanie TravisCI do automatycznego budowania projektu.
    • (1 pkt) Zastosowanie testów parametrycznych przy użyciu plików testowych.
    • (1 pkt) Zastosowanie JAVA 8 lub wyżej.
    • (2 pkt) Użycie planszy dowolnego wymiaru.
    • (2 pkt) Użycie innych technologii nie pokazywanych na zajęciach.

Ponadto pod ocenę jest brane również: (Brak tych elementów: -1 pkt za podpunkt od obowiązkowej punktacji zadania!)

    • Historia projektu w repozytorium.
    • Ocena opisu commitów
    • Stan repozytorium (żeby nie był śmietnikiem!!!)