Построитель Интерфейса Пользователя (User Interface Builder)
Построитель Интерфейса Пользователя (User Interface Builder) является объектно-
ориентированной средой визуального программирования, которая позволяет Вам быстро строить
самые сложные приложения, просто задавая связи между поставляемыми фирмой или созданными
Вами многократно-используемыми (reusable) объектами. В дополнение к технологии визуальной
разработки экрана и использованию уже созданных объектов, Построитель Интерфейса имеет
логику доступа к данным и средства автоматической генерация кодов пользовательского
интерфейса, что позволяет значительно увеличить производительность труда разработчиков и
качество самого приложения. При этом использование Построителя Интерфейса PROGRESS
уменьшает стоимость разработки приложения за счет уменьшения количества непосредственного
кодирования, которое приходится выполнять разработчикам.
Визуальное программирование.
При помощи Построителя Интерфейса можно быстро создавать сложные приложения,
использующие базы данных. Для этого Вы, используя технику визуального программирования,
просто определяете и размещаете в нужных местах экрана объекты баз данных и
пользовательского интерфейса,. Пользовательские интерфейсы содержат набор различных
графических объектов, обеспечивающих пользователю взаимодействие с приложением. Элементы
интерфейса включают в себя командные кнопки, раскрывающиеся меню, радио-клавиши и
т.д..
Объектами баз данных являются таблицы и поля. Для добавления объекта на экран, например
командной кнопки, Вы просто выбираете ее из предлагаемого Вам набора и перемещаете в
желаемое место на экране. Аналогичная процедура проделывается и для полей базы данных:
Построитель Интерфейса предлагает список полей базы данных, из которых Вы выбираете
нужные Вам поля и, затем, позиционируете их в нужное место на экране. Объекты базы данных
отображаются в соответствии с логикой атрибутов и умолчаний, наследуемых ими от Словаря
Данных. Все установки по умолчанию при этом могут быть изменены для отображения данных в
соответствии с конкретными требованиями приложения.
Построитель Интерфейса позволяет отображать на экране или в окне одиночную запись или сразу
же список записей базы данных. Список записей автоматически обрабатывается интеллектуальным
интерфейсом, включающим в себя всю необходимую логику, необходимую для просмотра и
перемещения по полученному результирующему набору записей в режиме скроллинга вперед или
назад, вне зависимости даже от того, поддерживает ли его Ваша конкретная СУБД или нет. Как
одиночные записи, так и списки записей могут содержать и отображать информацию из
многочисленных баз данных различных форматов. Связанная с записью информация может быть
представлена в том же самом окне, в раскрывающихся окнах или таблицах.
Использование ранее созданных объектов (reusable objects)
Построитель Интерфейса делает процедуру создания, поиска, управления и использования ранее
созданных объектов весьма простым делом. Определение пользователем объектов Построителя
Интерфейса увеличивает Вашу производительность, позволяя воспользоваться результатами той
работы, которая уже была проделана Вами или членами Вашей группы разработчиков. Повторно
используемые объекты могут быть созданы либо при помощи Построителя Интерфейса либо
Редактора Процедур, и могут содержать в себе программный код, определение объектов
Интерфейса, или то и другое вместе взятое. Если Вы собираетесь переходить к объектно
ориентированному принципу разработки приложений, то использование определяемых
пользователем объектов интерфейса будет вашим первым шагом в этом направлении.
Поддержка интерфейсов для символьных и графических терминалов
Построитель Интерфейса работает только на графических станциях, но его возможности по
эмуляции пользовательского интерфейса для символьных терминалов, позволяют создавать и
тестировать интерфейсы, предназначенные для символьных терминалов точно также, как и
интерфейсы для графических (GUI) приложений. В результате Вы получаете повышение общей
производительности, так как от Вас требуется знание только одного типа Построителя
Интерфейса Пользователя.
Различные платформы, под которые разрабатывается Интерфейс Пользователя, такие как
Windows, Motif и символьные терминалы, рассматривают процедуру позиционирования и
определения размеров объектов пользовательского интерфейса с совершенно различных точек
зрения. Возможность Альтернативной Планировки экрана (Alternate Layout) в Построителе
Интерфейса использует свойство наследования для того, чтобы позволить Вам быстро создавать и
модифицировать различные версии одного и того же окна для самых различных терминалов.
Альтернативная Планировка позволяет сохранять и компилировать различные варианты
графических окон в одном исходном файле, что упрощает распространение приложений,
предназначенных для работы на терминалах в различных графических средах. Подобные
возможности позволят Вам быстро и эффективно проектировать по-настоящему переносимые
приложения.
Генерация 4GL кода
Построитель Интерфейса включает в себя мощные средства для генерации кода, нацеленные на
снижение стоимости разработки сложных форм, меню и экранов, предназначенных для управления
списками файлов. В отличие от аналогичных средств, Построитель Интерфейса PROGRESS
"заранее" знает о типе используемых данных и автоматически генерирует необходимую логику для
взаимодействия с конкретными данными. Это означает, что Вам не нужно знать язык SQL для
использования Построителя Интерфейса. В подавляющем большинстве случаев вся логика
взаимодействия с данными Вашего окна генерируется автоматически - Вам не требуется даже
визуально определять ее. Эти возможности по генерации кода позволяют создавать и встраивать в
Построитель Интерфейса повторно используемые формы и шаблоны, содержащие логику
приложения, тем самым увеличивая производительность разработки, надежность самого
приложения и уменьшая стоимость его последующей поддержки.
Построитель Интерфейса является открытым средством разработки, поддерживающим стандарт
Программного Интерфейса Приложений (API), что позволяет включать в процесс разработки
приложений на PROGRESS программные средства, разработанные третьими фирмами, такие,
например, как системы контроля за версиями исходного кода. Так как все окна и формы,
генерируемые Построителем Интерфейса хранятся в виде отдельных самостоятельных текстовых
файлов, содержащих процедуры, написанные на языке PROGRESS 4GL, то Вы можете свободно
использовать их в нескольких приложениях или модифицировать и улучшить эти процедуры,
используя любые подходящие для этой цели средства, включая текстовые редакторы и системы
контроля за версиями исходного кода. Даже, если сгенерированная процедура на языке 4GL была
модифицирована, то она все равно может быть загружена обратно в Построитель Интерфейса для
ее дальнейшего редактирования уже в графическом виде.
Событийно-управляемое (Event-Driven) Программирование и Триггеры (Triggers) Интерфейса
Пользователя. Возлагая на приложения заботу о пользователе, событийно-управляемые
приложения, написанные на PROGRESS, делают труд пользователей более продуктивным и
приятным. Наряду с управлением визуальными атрибутами интерфейса пользователя,
Построитель Интерфейса позволяет Вам определять, - каким образом приложения должны
реагировать на происходящие внешние события. Конечные Пользователи взаимодействуют с
событийно-управляемыми приложениями посредством набора операций, называемых событиями
интерфейса пользователя. В качестве примера одного из таких событий можно привести выбор
опции меню, ввод данных в поле, изменение размера окна, нажатие клавиши на экране.
Построитель Интерфейса позволяет создавать процедуры на языке 4GL, связанные с этими
событиями. Эти процедуры называются Триггерами Интерфейса Пользователя. Редактор
Триггеров, встроенный в Построитель Интерфейса позволяет быстро понять и отредактировать
логические взаимосвязи между тем, как будет выглядеть и, как будет реагировать на внешние
события Ваше приложение.
Определение Триггеров Интерфейса Пользователя для любого элемента или события, дает Вам
возможность более гибкого контроля за поведением приложения.
Организация исходного кода и логики приложений.
В дополнение к определению объектов интерфейса пользователя и триггерам, оконные объекты
PROGRESS также инкапсулируют определения переменных и внутренних процедур или "методов".
Наличие этих элементов поможет Вам легко создавать и поддерживать сложные многооконные и
многомодульные приложения, характерные для современного мира. Редактор Разделов (Section
Editor) в Построителе Интерфейса позволяет создавать и размещать разделы этих определений для
эффективной координации взаимодействия модулей в приложениях со сложной логикой работы.
Редактор Разделов обеспечивает быстрый доступ и возможность редактирования следующих
разделов для оконных объектов:
- Раздел Определений. Здесь Вы определяете переменные,
константы и параметры, которые управляются или используются оконными
объектами PROGRESS. Может возникнуть ситуация, когда на экране
одновременно должно появиться несколько одних и тех же оконных объектов,
одновременно активных, и каждый такой объект будет управлять или
"инкапсулировать" свои собственные данные, что позволяет легко создавать
сложные многооконные приложения.
- Раздел Процедур инициализации и закрытия окон. Вы управляете
логикой приложения, инициализирующей инкапсулированные данные окна и
активируете оконные объекты интерфейса пользователя. После
инициализации окно остается в состоянии готовности и ожидания отклика на
события и команды Пользователя "или сообщения", полученные от других
оконных объектов или объектов приложения. Здесь также указывается, какие
должны быть выполнены действия при закрытии окон, чтобы обеспечить
правильное состояние объектов
- Раздел Внутренних процедур. Внутренние процедуры или "методы"
- это функции, которые могут быть вызваны или повторно использованы в
одном или нескольких триггерах оконного объекта. Использование внутренних
процедур уменьшает количество времени и усилий, необходимых для описания
поведения оконного объекта.
Так как другим компонентам приложения тоже
может потребоваться взаимодействие с Вашими оконными объектами, то
внутренние процедуры описывают также способ, каким образом будут
обслуживаться запросы от других объектов приложения. Использование
внутренних процедур для определения надежных, основанных на сообщениях
интерфейсов между оконными объектами упрощает интеграцию и поддержку
модульных многооконных приложений.
Завершенность и гибкость
Построитель Интерфейса сочетает в себе мощь, завершенность и переносимость языка 4-го
поколения PROGRESS (4GL). Экраны и окна, спроектированные на одной машине под одним
пользовательским интерфейсом (MS Windows, Motif или символьный) легко могут быть
перенесены и запущены на другой машине с другим пользовательским интерфейсом. Такая,
присущая языку переносимость, максимизирует продуктивность разработки и позволяет Вам
использовать однажды разработанное приложение на огромном множестве платформ, не прибегая
к дополнительному перепрограммированию.