Графический интерфейс пользователя
Графический интерфейс пользователя (Graphics User Interface - GUI) - ГИЛ является обязательным компонентом большинства современных программных продуктов, ориентированных на работу конечного пользователя. К графическому интерфейсу пользователя предъявляются высокие требования как с чисто инженерной, так и с художественной стороны разработки, при его разработке ориентируются на возможности человека.
Наиболее часто графический интерфейс реализуется в интерактивном режиме работы пользователя для программных продуктов, функционирующих в среде Windows, и строится в виде системы спускающихся меню с использованием в качестве средства манипуляции мыши и клавиатуры. Работа пользователя осуществляется с экранными формами, содержащими объекты управления, панели инструментов с пиктограммами режимов и команд обработки.
Пример 18.3. Средствами редактора диалогов Microsoft Word Dialog Editor построено диалоговое окно, обеспечивающее графический интерфейс пользователя. К числу типовых объектов управлении графического интерфейса относятся:
- метка (label) - постоянный текст, не подлежащий изменению при работе пользователя с экранной формой (например, слова Фамилия Имя Отчество);
- текстовое окно (text box) - используется для ввода информации произвольного вида, отображения хранимой информации в базе данных (например, для ввода фамилии студента);
- рамка (frame) - объединение объектов управления в группу по функциональному или другому принципу (например, для изменения их параметров);
- командная кнопка (command button) - обеспечивает передачу управляющего воздействия, например, кнопки <Сanсе1> <ОК> <Отмена>; выбор режима обработки типa <Bвoд>, <Удaлeниe>, <Peдaктиpoвaниe>, <Выход> и др.;
- кнопка-переключатель <option button> - для альтернативного выбора кнопки из группы однотипных кнопок (например, семейное положение);
- помечаемая кнопка <check button> - для аддитивного выбора несколько кнопок из группы однотипных кнопок (например, факультатив для посещения);
- окно-список (list box) - содержит список альтернативных значений для выбора (например, ⌠Спортивная секция■);
- комбинированное окно (combo box) - объединяет возможности окна-списка и текстового окна (например, ⌠Предметы по выбору■ - можно указать новый предмет или выбрать один из предлагаемого списка);
- линейка горизонтальной прокрутки - для быстрого перемещения внутри длинного списка или текста по горизонтали;
- линейка вертикальной прокрутки - для быстрого перемещения внутри длинного списка или текста по вертикали;
- окно-список каталогов;
- окно-список накопителей;
- окно-список файлов и др.
Стандартный графический интерфейс пользователя должен отвечать ряду требований:
- поддерживать информационную технологию работы пользователя с программным продуктом - содержать привычные и понятные пользователю пункты меню, соответствующие функциям обработки, расположенные в естественной последовательности использования;
- ориентироваться на конечного пользователя, который общается с программой на внешнем уровне взаимодействия;
- удовлетворять правилу "шести" - в одну линейку меню включать не более 6 понятий, каждое из которых содержит не более 6 опций;
- графические объекты сохраняют свое стандартизованное назначение и по возможности местоположение на экране.
18.2. СТРУКТУРНОЕ ПРОЕКТИРОВАНИЕ И ПРОГРАММИРОВАНИЕ
· Нисходящее проектирование
· Модульное программирование
· Структурное программирование
Нисходящее проектирование
Метод нисходящего проектирования предполагает последовательное разложение общей функции обработки данных на простые функциональные элементы ("сверху-вниз").
В результате строится иерархическая схема, отражающая состав и взаимоподчиненность отдельных функций, которая носит название функциональная структура алгоритма (ФСА) приложения.
Последовательность действий по разработке функциональной структуры алгоритма приложения:
Рис. 18.2. Функциональная структура приложения:
Ц - цель; пЦ - подцель; П - приложение; Ф - функция
МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ
Свойства модуля
Модульное программирование основано на понятии модуля - логически взаимосвязанной совокупности функциональных элементов, оформленных в виде отдельных программных модулей.
Модуль характеризуют:
Рис. 18.3. Функционально-модульная структура приложения
Пример 18.5. Некоторые функции могут выполняться с помощью одного и того же программного модуля (например, функции Ф1 и Ф2).
Рис. 18.4. Блок-схема алгоритма поиска в базе данных.
В любой типовой структуре блок, кроме условного, имеет только один вход и выход, безусловный переход на блок с нарушением иерархии запрещен (оператор типа GoTo в структурном программировании не используется). Виды основных управляющих структур алгоритма приведены в табл. 18.1.
Пример 18.6. Алгоритм поиска в базе данных сведений о максимальном окладе сотрудников (рис. 18.4).
Таблица 18.1. Управляющие структуры алгоритмов
|
| Типы управляющей структуры | Применение управляющей структуры |
| Последовательность Блок 1 Блок 2 Конец | Последовательность включает фиксированный перечень блоков (операторов). Каждый очередной блок обрабатывается после завершения предыдущего без дополнительных условий. Для изменения порядка обработки блоков редактируется последовательность выполняемых |
| Альтернатива (условие выбора) Начало Да Условие Нет Альтернатива1 Альтернатива2 Конец | В блоке Условие содержится условие выбора альтернативы обработки. Каждая альтернатива выполняется 1 раз; выполнение одной из двух альтернатив - обязательно. Развитие данного типа структуры является множественная альтернатива, когда последовательно проверяются условия выполнения определенных альтернатив. Если очередное условие истинно, обрабатывается соответствующая ему альтернатива, после чего происходит выход. В противном случае - переход к проверке условия следующей альтернативы. Если ни одно из условий не выполнилось, происходит выход. |
| Цикл ("пока") Начало Условие Нет Да Тело цикла Конец | В блоке Условие задается условие тела цикла - определенной обработки. Если условие не выполняется, цикл прерывается и осуществляется выход. Условие может содержать счетчик повторений тела цикла либо логическое условие. Тело цикла - произвольная последовательность блоков (операторов) обработки |
Рис. 18.2. Функциональная структура приложения:
Ц - цель; пЦ - подцель; П - приложение; Ф - функция
МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ
Свойства модуля
Модульное программирование основано на понятии модуля - логически взаимосвязанной совокупности функциональных элементов, оформленных в виде отдельных программных модулей.
Модуль характеризуют:
Рис. 18.3. Функционально-модульная структура приложения
Пример 18.5. Некоторые функции могут выполняться с помощью одного и того же программного модуля (например, функции Ф1 и Ф2).
Рис. 18.4. Блок-схема алгоритма поиска в базе данных.
В любой типовой структуре блок, кроме условного, имеет только один вход и выход, безусловный переход на блок с нарушением иерархии запрещен (оператор типа GoTo в структурном программировании не используется). Виды основных управляющих структур алгоритма приведены в табл. 18.1.
Пример 18.6. Алгоритм поиска в базе данных сведений о максимальном окладе сотрудников (рис. 18.4).
Таблица 18.1. Управляющие структуры алгоритмов