Слушатели MVC и Java GUI - PullRequest
       11

Слушатели MVC и Java GUI

3 голосов
/ 30 января 2011

Я хотел бы спросить, с точки зрения шаблона проектирования, было бы лучше поместить слушателей для графического интерфейса пользователя в «представление» или «контроллер».Коллега считает, что «вид» - самое естественное место, но я не уверен в этом.

1 Ответ

2 голосов
/ 30 января 2011

Если вы говорите о Swing, то, как ранее обсуждалось , MVC в Java не является ясным и простым, как предлагает шаблон.Таким образом, ответ на ваш вопрос зависит от того, как вы определяете «представление» и «контроллер» в отношении конкретного приложения, и что вы подразумеваете под «размещением слушателей» в одном или другом.

Я беруview слушатели являются частью механизма контроллера - они обеспечивают слабую (ish) связь между представлением (которое отображает текущее состояние) и моделью (которое поддерживает текущее состояние) и предоставляют способ взаимодействия между ними.Однако большинство слушателей Swing очень тесно связаны с событиями пользовательского интерфейса - нажатием кнопок мыши, выбором элементов из списков и т. Д. - и поэтому вы можете создать дополнительный уровень абстракции, который принимает эти события пользовательского интерфейса, которые фиксируются слушателями.и переводит их в нечто более общее для области вашего приложения.Например, EJB может предоставить общий интерфейс для некоторой бизнес-логики, которая может быть вызвана пользовательским интерфейсом Swing или вызовом API через веб-сервис.Таким образом, контроллером является EJB, а в представлении находится прослушиватель событий Swing, который инициирует вызов этого EJB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...