Система управления пользовательским интерфейсом
Эта статья нуждается в дополнительных цитатах для проверки . ( ноябрь 2007 г. ) |
Система управления пользовательским интерфейсом (UIMS) — это механизм четкого отделения процесса или бизнес-логики от кода графического пользовательского интерфейса (GUI) в компьютерной программе. [ 1 ] UIMS предназначены для поддержки N-уровневых архитектур путем строгого определения и обеспечения соблюдения границы между бизнес-логикой и графическим интерфейсом. довольно жесткую архитектуру программного обеспечения UIMS почти всегда подразумевает , и чаще всего в одной UIMS поддерживается только одна парадигма разделения. UIMS также может иметь библиотеки и системы, такие как графические инструменты для создания ресурсов пользовательского интерфейса или хранилищ данных.
Как правило, вы не можете легко использовать несколько систем UIMS одновременно, поэтому выбор правильной модели для вашей UIMS является важным проектным решением в любом проекте. Выбор системы зависит от системы (систем), для которой вы хотите создать пользовательские интерфейсы, и общего стиля вашего приложения. Например, если вы хотите создать веб-интерфейс или просто отдельное приложение, или и то, и другое, это будет важным фактором при выборе. Если вы хотите выполнить развертывание на Macintosh, Windows и Linux, это еще больше повлияет на ваш выбор системы UIMS.
В исследовательских работах описано множество подходов UIMS. Однако существует не так много систем, доступных на коммерческой основе или с открытым исходным кодом.
Модели
[ редактировать ]В часто цитируемой работе Фоли и Уоллес описывают «лингвистическую модель» управления пользовательским интерфейсом, состоящую из уровня представления, уровня управления диалогом и уровня приложения. Эти слои соответствуют лексическому, синтаксическому и семантическому слоям формальной теории языка. Хотя модель Фоли теоретически поучительна, она не предлагает конкретной практической системы разделения кода. Есть также много интересных пограничных случаев, которые не попадают ни в один из этих слоев.
Более непосредственно применимая теория управления пользовательским интерфейсом — это модель-представление-контроллер шаблон проектирования , который подробно описан в отдельной статье. Недавним вариантом MVC является модель модель-представление-презентатор , которая похожа на MVC, но имеет некоторые интересные идеи по проблеме.
Реализации
[ редактировать ]Функциональная система рассматривает все действия пользовательского интерфейса как интерфейсы для функций. Диалоги существуют исключительно для сбора параметров для функций, которые вызываются при закрытии диалога. Деревья меню — это одно из семейств реализаций моделей, которые следуют этому шаблону.
UIMS на основе грамматики предоставляет специализированный язык для описания пользовательского интерфейса. Обычно это специальный язык, созданный специально для представления элементов пользовательского интерфейса.
Модель редактирования — это специализация UIMS, основанная на грамматике. Они представляют все взаимодействия как прямое представление лежащих в основе объектов представления. По сути, использование грамматики языка программирования в качестве грамматики графического пользовательского интерфейса. Полоса прокрутки может представлять собой целое число, флажок может представлять собой логическое значение, функция представлена в виде кнопки или пункта меню. Диалоговое окно или меню — это представление сложного объекта, содержащего свойства и функции. Уровень контроллера автоматически синхронизирует объект с презентацией и наоборот через двустороннее соединение, обеспечиваемое шаблоном Observer . Включение/отключение и проверка представляют собой особые проблемы в рамках модели редактирования, но с ними можно справиться. Коммерческая программа ViewSoft Internet была ненадолго доступна в 1990-х годах и реализовала построитель графического пользовательского интерфейса общего назначения, основанный на модели редактирования.
Transition Networks представляет логику пользовательского интерфейса как своего рода интеллектуальную блок-схему. В модели языка событий компьютерный язык создан для обработки событий. По сути, это подход, использованный в языках Microsoft .Net C# и Visual Basic.Net с их структурами языка делегатов и событий.
Другие модели включают Hypertalk, производственные системы и декларативные языки.
Примеры UIMS и моделей
[ редактировать ]- Тигр
- МенюLay
- ГиперКард
- ViewSoft Интернет
- Сассафрас
- АЛГЕ
- Скрип
- Модель-представление-контроллер (MVC)
- Модель-представление-презентатор (MVP)
- Лингвистическая модель
- Модель Зеехайма
- Хиггинс UIMS
- Модель арки
- Пикассо-3
- ПрокСм.
- Менеджер интерфейса Common Lisp
Лучшие исследователи
[ редактировать ]Важные исследования в этой области были проведены Брэдом Майерсом , Дэном Олсеном , Скоттом Хадсоном и Джеймсом Д. Фоули .
Ссылки
[ редактировать ]- ^ Олсен, Дэн (1991). Системы управления пользовательским интерфейсом: модели и алгоритмы . Издательство Морган Кауфманн . ISBN 1-55860-220-8 .