В этой домашней работе по java мы испытаем твои навыки по основам языка, знание алгоритмов и понимание объектно-ориентированной парадигмы. Всего тебя ждет 3 задания, каждое из которых располагается в собственном пакете. Мы рекомендуем тебе проходить их в следующем порядке:
uniq_in_sorted_stream
tree_max_depth
fleet_commander
Для оценивания мы будем использовать 3 состовляющие:
- Тесты
- Линтер
- Оценка коуча
При сабмите твоей домашки мы прогоним её через ряд тестов, часть из которых доступна тебе. У тебя будет 3 попытки для сабмита домашки. После дедлайна, коучи проверят твою домашку, основываясь на результатах тестов выставят окончательную оценку и напишут фидбек. Максимум за домашнюю работу можно получить 10 балллов, которые распределяются следующим образом:
- Автотесты заданий домашки - 6:
uniq_in_sorted_stream
- 1tree_max_depth
- 2fleet_commander
- 3
- Линтер - 1;
- Оценка коуча - 3;
ВАЖНО: оценка за автотесты является не окончательной, а промежуточной. Коучи могут аннулировать оценку за задание, если они поймают вас на мошенничестве, например подгонка ответа задания под тесты или списывание. Также коучи получают 3 балла, которые могут распределить на своё усмотрение, например добавить баллы за хороший код или оригинальное решение задания.
Для данной домашки мы используем модифицированный spring style guide: из него убраны javadoc комментарии и заголовки файлов, других изменений в нём нет. Линтер НЕ является частью автотестов, поэтому если вы нарушили стайлгайд, вы об этом не узнаете. В этом задании проверять корректность стайлгайда - это ваша задача, и для её решения вы можете выбирать любой удобный для вас путь. Например, вы можете запускать его вручную перед каждым пушем в репозиторий или добавить гит хук pre-commit или pre-push, чтобы делать это атвоматически.
- Склонировать репозиторий
gradle test
- запуск тестовgradle format
- форматирование кодаgradle checkstyleMain
- запуск линтераgradle check
- запуск линтера и тестов