9.6 Оконные среды, инструментарии и приложения |
Предыдущая Содержание Следующая |
Приложения, написанные для работы непосредственно через интерфейс кадрового буфера, действительно существуют, но только простые. Так как GUI работает с большим набором форм и элементов управления, существует необходимость в абстракции. Библиотеки/уровни API, которые делают программирование GUI простым и удобным, уже в течение многих лет существуют на настольных платформах. Эти библиотеки покрывают интерфейс драйвера более простыми API, которые имеют смысл для программиста графического приложения. Эти библиотеки важны во всех оконных средах. Универсальная оконная среда состоит из:
▪Интерфейсный уровень для низкоуровневых драйверов, таких как драйверы экрана и ввода данных ▪Графический движок для рисования объектов на экране ▪Движок шрифтов, который способен декодировать один или несколько файловых форматов шрифтов и отрисовать их ▪API, которые предоставляют доступ к различным функциям, экспортируемым движками графики и шрифтов
Напомним, мы обсуждали X как оконную среду, используемую на настольных компьютерах с Linux. X-lib является уровнем API, предоставляемым оконной средой X. Инструментарии GUI также представляют собой библиотеки, построенные над оконными средами для преодоления некоторых недостатков библиотеки нижнего уровня.
▪Библиотеки оконной среды зависят от платформы. Например, код приложения, написанный поверх X-lib, практически невозможно портировать на Windows. Большинство инструментов доступны на нескольких платформах, и, следовательно, делают перенос возможным. Кросс-платформенным инструментарием, доступным на различных платформах, является Qt, такой как Qt/Windows (Windows XP, 2000, NT 4, Me/98/95), Qt/X11 (X windows), Qt/Mac (Mac OS X) и Qt/Embedded (встраиваемый Linux). ▪API, экспортируемые библиотеками оконной среды, выполняют простые задачи. Инструментарии реализуют многие компоненты GUI/объекты и обеспечивают для них интерфейсы. Так, например, наборы инструментальных средств обеспечивают интерфейсы для часто используемых диалоговых окон, таких как "Открыть файл", "Распечатать файл", "Выбрать цвет", и так далее. ▪Родные виджеты слишком просты и приложения не могут изменить то, как выглядит виджет, когда они используют оконные библиотеки. Инструментарии предоставляют поддержку тем и виджетов, которые часто загружаются с такими функциями, как поддержка 3-х мерного вида, анимация и так далее. ▪Наиболее важным из всех являются инструментарии, предоставляющие дизайнерский GUI или инструменты Быстрой Разработки приложений (Rapid Application Development, RAD). Инструменты RAD являются основами GUI, которые предлагают интерфейс укажи-и-нажми для выполнения таких задач, как размещение виджета или определения обратного вызова. Qt предоставляет Qt Designer. Для Gtk используется Glade.
Наборы инструментальных средств не всегда выгодны. Некоторые из них занимают много места в вашем коде в обмен на огромный набор функций, которые они несут с собой. Существует много вариантов, когда речь идет о комбинациях оконные среды/набор инструментария для встраиваемого Linux. Наиболее популярные перечислены в Таблице 9.5. Одним из главных преимуществ инструментария Linux является то, что он предоставляет среду моделирования на ПК. Приложения могут быть разработаны и прототипизированы на рабочем столе, уменьшая таким образом время разработки и упрощая отладку. В этом разделе мы рассмотрим оконную среду Nano-X.
Таблица 9.5 Популярные оконные среды
| ||||||||||||||||||||||||
Предыдущая Содержание Следующая |