Projekt z tematów 1-4
Zadanie:
Napisz program, który wczyta z plików json (lub xml) listę słów danego języka. Następnie dla każdego wpisanego przez użytkownika słowa wypisze z jakiego języka ono pochodzi (uwaga! to samo słowo może występować w wielu językach), lub że nie ma takiego słowa w bazie.
Program powinien też umożliwiać dodanie własnego języka i listy słów i zapisanie go do pliku json (lub xml). Przy kolejnym uruchomieniu plik taki powinien być brany pod uwagę przez program.
Na wyjściu programu powinniśmy zachować do pliku PDF ile podano słów i z jakich języków pochodziły podane słowa. Wykorzystaj dowolną bibliotekę Javy do tworzenia plików jako pdf, by zapisać w nim statystyki. Format pliku jest dowolny, ma zawierać podane wyżej informacje, może zawierać też dodatkowe elementy.
Napisz testy dla metod wyszukujących słowa (najlepiej żeby klasa przyjmowała na wejściu kolekcję słowników, a metoda słowo do wyszukania). Uwaga! Testy nie powinny korzystać z plików json jako przypadków testowych, stwórz w testach mini słowniki na ich potrzeby ręcznie w kodzie i na ich przykłądzie wywołuj metode którą chcesz przetestować.
Wykorzystaj strumienie oraz co najmniej dwie struktury danych (set, map, list, stack, etc.).
Ocena:
Testy 20% Strumienie 20% Serializacja i Deserializacja 20% Biblioteka PDF 20% Działanie zgodne ze specyfikacją 20%
Example of Json file structure:
{
"words": [
"a",
"abandon",
"ability",
"able",
"abortion",
"about",
"above",
"abroad",
"absence",
"absolute",
"absolutely",
"absorb",
"abuse",
"academic",
"accept",
"access",
"accident",
"accompany",
"accomplish",
"according",
"account",
"accurate",
"accuse",
"achieve",
"achievement",
"acid",
"acknowledge",
"acquire",
"across",
"act",
"action",
"active",
"activity",
"actor",
"actress",
"actual",
"actually",
"ad",
"adapt",
"add",
"addition",
"additional"
],
"language": "English"
}
Zmiany:
13-10-2021 Dodano uwagę o niestosowaniu plików json w przypadku testów jednostkowych.