Лучшая организация классов GUI? - PullRequest
2 голосов
/ 12 сентября 2010

В настоящее время я пытаюсь программировать на Scala, но я думаю, что это обычно относится и к другим программам?

В Swing мы обычно организуем наш код и логику в одном классе (возможно, в нашем фрейме или панели). То, что я узнал на проходе, всегда имело дело и с классом. Мне интересно, есть ли какой-нибудь средний (не слишком большой и сложный) проект для просмотра?

Как мы на самом деле организуем наш код, например, от входа в систему для просмотра таблиц, обновления таблиц и других задач? Мы обычно создаем много фреймов, которые, кажется, были тем, что я узнал из Visual Basic? Или просто много панелей, и есть рама для удержания этих рам? Если это второй случай, как бы я на самом деле передавал информацию с одной панели на другую, поскольку они на самом деле не связаны напрямую, кроме как через кадр.

Любое руководство по этой организации?

Ответы [ 2 ]

2 голосов
/ 12 сентября 2010

Исследование с использованием архитектуры Model View Controller (MVC).Таким образом, у вас есть модель, которая хранит ваше текущее состояние, представление, которое показывает, что вы хотите, как вы хотите, и контроллер (бизнес-логика), который связывается между ними.Это позволяет вам изменять вашу модель или представление и не нужно вносить слишком много изменений в другие места в вашем коде.Это также означает, что вы можете повторно использовать свое представление (GUI) на другой модели.

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

1 голос
/ 15 сентября 2010

Если я правильно понимаю из ваших комментариев, вы искали простой пример. Начиная с этой схемы , история редактирования этой простой примера игры показывает эволюцию использования шаблона Model – View – Controller разработать программу с графическим интерфейсом. Хотя на первый взгляд это кажется более сложным, значение паттерна заключается в разделении модели и вида. Это позволяет изменять их более независимо.

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