Думаю решение сделать класс TAdapter вложенным в Board неверное
Почему плохо
1 Обработка действий пользователя - довольно важный функционал, ограничение доступа к нему может стать проблемой, когда он понадобится в другом месте
2 Вложенный класс довольно редко-используемая фича, скорее всего, читающему придётся вспоминать особенности вложенных классов
Также этот класс, почему-то делигирует часть своей работы классу Crawler, т.е нажатия на паузу он обрабатывает сам, а для обработки других нажатий использует аналогичные методы у Crawler(которые работают напрямую с keyEvent), попахивает "Расплывшимся решением"
Почему плохо:
1 При изменении логики обработки нажатий, надо будет менять код в разных местах
2 Возможны расхождения в решении, когда один класс работает с keyEvent по одному, а другой класс по другому
Думаю решение сделать класс TAdapter вложенным в Board неверное Почему плохо 1 Обработка действий пользователя - довольно важный функционал, ограничение доступа к нему может стать проблемой, когда он понадобится в другом месте 2 Вложенный класс довольно редко-используемая фича, скорее всего, читающему придётся вспоминать особенности вложенных классов Также этот класс, почему-то делигирует часть своей работы классу Crawler, т.е нажатия на паузу он обрабатывает сам, а для обработки других нажатий использует аналогичные методы у Crawler(которые работают напрямую с keyEvent), попахивает "Расплывшимся решением" Почему плохо: 1 При изменении логики обработки нажатий, надо будет менять код в разных местах 2 Возможны расхождения в решении, когда один класс работает с keyEvent по одному, а другой класс по другому