Для проекта я работал над настольным приложением JavaFX 2.0 (пользовательский интерфейс keytool). Как работает JavaFx2.0 (в любом случае, в моем проекте), обработка событий пользовательского интерфейса происходит в самих классах пользовательского интерфейса JavaFX 2.0 (например, события onclicked () или слушатели изменения свойств).
Прямо сейчас я использую статический класс с методом: getController (), который все классы пользовательского интерфейса используют для доступа к одному контроллеру приложения (как-то мне было неудобно передавать контроллер всем более 50 классам пользовательского интерфейса) ,
Проблема, однако, в том, что этот контроллер становится очень большим! У него слишком много методов (все методы бизнес-логики, к которым должны обращаться мои классы пользовательского интерфейса). Несмотря на то, что он передает только вызовы методов моей модели / службе, все еще существует множество исключений, которые необходимо перехватить на уровне контроллера для обработки их в пользовательском интерфейсе (показать сообщения об ошибках и т. Д.).
Кто-нибудь знает чистый способ заставить весь этот шаблон MVC / MVP работать лучше для моего приложения без того, чтобы классы UI / Controller / Model напрямую зависели друг от друга? Может быть, разные контроллеры для каждого варианта использования? Но тогда как мне сделать так, чтобы правильный класс пользовательского интерфейса получал правильный контроллер, не зная об этом напрямую? Может быть, с помощью интерфейса?