Шаблоны проектирования Java SWT - PullRequest
4 голосов
/ 07 мая 2010

Какие хорошие шаблоны дизайна для создания формы в Java?

У меня есть приложение, которое имеет 6 вкладок с различной формой в каждой. Как типичный Java-программист делает эти элементы доступными?

Например, как программист wpf, я мог бы связать все эти элементы управления с базовыми объектами.

Что любят делать Java-программисты?

Ответы [ 2 ]

1 голос
/ 29 мая 2012

Я не знаю, что программисты любят делать, но вы должны послушать, что говорит паттерн MVC.

И он говорит вам, что у каждого представления должен быть свой контроллер. У вашего взгляда явно есть подпредставления. Таким образом, дизайн в этом случае, очевидно, будет следующим:

MainView
    Label1
    Text1
    Tab1Subview
        Label1
        Text1
    Tab2Subview
        Label1
        Text1


MainViewController
   Tab1SubviewController
   Tab2SubviewController

И контроллеры будут определять привязку для каждого конкретного представления. Вы также можете использовать один контроллер для всех подпредставлений и связать его внутри. Ваш главный контроллер может иметь ссылку на основной объект корневой модели, например Формы. И конкретный контроллер может связывать подобъекты. Как я уже сказал снова - вы можете пойти с одним большим контроллером и связать все это в одном месте.

Это то, для чего был создан MVC.

Инструменты

Если вы ищете графический дизайнер SWT, то Window Builder Pro (Eclipse Plugin) - безусловно, лучший выбор (хотя и не идеальный, но лучший из всех доступных).

Такие вещи, как ЭДС, довольно сложны. Вы можете начать с сочетания Window Builder Pro и кодирования, и, как уже упоминалось выше, JFace Binding API будет опцией - но это не обязательно - в зависимости от модели вы можете использовать либо JFace Binding, либо сделать это самостоятельно в коде.

Для сохранения простой формы все, что вам нужно сделать, это написать что-то вроде метода сохранения, например ::

person.setName(view.getFullNameTextField().getText());

это не намного хуже, чем использование расширенных функций связывания, особенно если вы не будете зависеть от дополнительных библиотек, таких как JFace.

0 голосов
/ 11 мая 2010

Если вы используете Eclipse, вы можете попробовать EMF, удивительный фреймворк, который поможет вам спроектировать вашу модель, сгенерировать Java-код и предоставит довольно крутой редактор моделей за считанные минуты.

EMF обеспечивает привязку данных между виджетом пользовательского интерфейса и моделью, вы можете прочитать сгенерированный код, чтобы увидеть, как он работает.

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