Projekt z przemdiotu Programowanie Obiektowe
Proszę zaimplementować zestaw klas reprezentujących logikę symulatora gry w szachy.
UWAGI:
· proszę dostarczyć prostych testów automatycznych i ewentualnie możliwości testowania ręcznego (program nie musi mieć rozbudowanego interfejsu)
· proszę samodzielnie uściślić zakres projektu i napisać go zgodnie z paradygmatem programowania obiektowego
· proszę dostarczyć dokumentację końcową z opisem wszystkich hierarchii klas i sposobów komunikacji między nimi. W dokumentacji proszę zamieścić informacje o tym, jakich zabiegów ze strony programisty wymagałoby dalsze rozbudowywanie i modyfikowanie programu (np. napisanie interfejsu graficznego). Proszę również uzasadnić ewentualne nietrywialne decyzje projektowe
Tematy projektów celowo zaproponowane są tak, żeby "nie dało się" napisać całego programu (tzn. mają one cechy większego projektu, który byłby wykonywany zespołowo, dotyczyłby zaawansowanej technologii itp.). Państwa zadaniem jest zaproponować i zaimplementować jedynie pewien moduł wchodzący w skład takiej aplikacji z dbałością o łatwą w rozbudowie hierarchię klas. Ponadto w projektach może pojawić się potrzeba korzystania z pewnych złożonych danych np. dostarczanych przez inny "moduł", którego implementacja nie jest elementem z adania. W takim przypadku można symulować dostarczanie tych danych np. za pomocą klas-atrap (polecam poczytać o mock objects; punktem wyjścia może być artykuł na wikipedii - jest krótki i prosty w zrozumieniu).