Requirements
На вход приходит текстовый файл (он может лежать в проекте или где-то еще на файловой системе), например книга "The Fellowship of the Ring".
Задача:
Прочитать файл и посчитать количество упоминания слов.
Input: C:/Temp/myfile.txt
Output: Unique words: 949491
Top 100 most popular words:
[{"And": 1000},
{"Why": 555},
...
{"Ring": 1}]
Что важно:
-
Пока еще можно использовать метод Main. Но в других классах слова static быть не должно. Это плохое, злое слово.
-
Логику нужно разбить на отдельные классы -- пусть один загружает файл с диска в память, другой считает слова, третий форматирует и выводит ответ, и т.д. У каждого класса должно быть одно и только одно Высшее Предназначение.
-
Нужно использовать Maven для сборки проекта. Idea > new Project > Maven
-
Maven позволяет подключать внешние библиотеки, которые упрощают жизнь. По умолчанию Maven создает папку src/test и подключает библиотеку JUnit. Поэтому код нужно проверить. Это нужно для отладки и чтобы потом спать крепче. Нужно написать JUnit test, который берет файл из папки test/resources/myfile.txt, считает в нем количество слов и сравнивает с ожидаемым.
-
Файлы .idea и .iml не надо добавлять в проект (файл .gitignore)