На этом уроке мы напишем функцию для сохранения решения головоломки в текстовый файл.
Дата отправки отчёта:
11 октября 2018 г.
Задание выполнено: за
11 дней 17 час. 39 мин.
Чему научился:
Переделал логику взаимодействия классов между собой, воспользовался либой quava а именно EventBus'ом. Разделил обязанности классов. Теперь SudokuSolver (он же Sudoku в видео) отвечает только за решение судоку, которая передается параметром. При изменении любого значения поле судоку (вынес в отдельный класс) генерирует event изменения клетки, который прослушивается отрисовщиком (у меня рисует только в терминал, но с таким подходом можно куда угодно вещать), и SudokuSolver в свою очередь выстреливает event окончания решения, который прослушивается экспортерами (экспортит в консоль и в файл). В итоге получились компактные слабосвязанные классы, писал взахлеб, ооочень интересно
Что было сложным:
Решиться переделать на манер, к которому душа лежала, ну и попробовать новое (на удивление guava eventbus оказался крайне простым в использовании)