Смекни!
smekni.com

Разработка автоматизированного рабочего места оператора автотранспортного предприятия (стр. 8 из 13)

Обмен информацией осуществляется передачей сообщений и управляющих сигналов. Сообщение – порция информации, участвующая в диалоговом обмене. По направлению передачи информации различают:

- входные сообщения, которые генерируются человеком с помощью средств ввода (клавиатуры, мыши и т.п.);

- выходные сообщения, которые генерируются компьютером в виде текстов, звуковых сигналов и / или изображений и выводятся пользователю на экран монитора или другие устройства вывода информации.

В основном пользователь генерирует сообщения следующих типов: запрос информации, запрос помощи, запрос операции или функции, ввод или изменение информации и т.д. В ответ он получает: подсказки или справки, информационные сообщения, не требующие ответа, приказы, требующие действий, сообщения об ошибках, нуждающиеся в ответных действиях, и т.д.

По аналогии с процедурным и объектным подходом к программированию различают процедурно-ориентированный и объектно-ориентированный подходы к разработке интерфейсов (рис. 2.3).

Рисунок 2.3 – Типы пользовательских интерфейсов

Процедурно-ориентированные интерфейсы предоставляют пользователю возможность выполнения некоторого набора действий, для которых могут вводиться соответствующие исходные данные. Вся работа с программой сводится к выбору действия, которое надо выполнить (если такой выбор предоставляется), вводу данных (при необходимости) и обработке полученных результатов.

Объектно-ориентированные интерфейсы используют несколько иную модель взаимодействия с пользователем, ориентированную на манипулирование объектами предметной области. Мы не будем подробно останавливаться на объектно-ориентированных пользовательских интерфейсах, поскольку для решения учебных задач достаточно процедурного подхода, значительно более простого в реализации. В качестве примера объектно-ориентированного интерфейса можно привести программу «Проводник» ОС Windows. Объектами предметной области в этом случае являются файлы и папки. Выполнение операции может выглядеть так: пользователь «берет» файл (точнее, объект интерфейса, соответствующий файлу) и «перетаскивает» его в другую папку, инициируя таким образом перемещение «физического» файла на диске.

Процедурно-ориентированные интерфейсы, в свою очередь, можно разделить на несколько подтипов: консольные, меню и со свободной навигацией.

Консольным называют интерфейс, который организует взаимодействие с пользователем на основе последовательного ввода и вывода информации в текстовом режиме по принципу «вопрос-ответ». Обычно такой интерфейс реализует конкретный сценарий работы, например: ввод данных – решение задачи – вывод результата (рис. 1.4, а). Единственное отклонение от последовательного процесса, которое обеспечивается данным интерфейсом, заключается в организации цикла для обработки нескольких наборов данных (рис. 1.4, б). Подобные интерфейсы в настоящее время используют только в процессе обучения программированию или в тех случаях, когда вся программа реализует одну функцию, например, в некоторых системных утилитах.


а) б)

Рис.1.4 – Структура программы с консольным интерфейсом

Интерфейс-меню, в отличие от консольного интерфейса, позволяет пользователю выбирать необходимые операции из специального списка, выводимого ему программой. В этом типе интерфейсов последовательность действий выбирается самим пользователем. Различают одноуровневые и иерархические меню. Первые используют для сравнительно простых случаев, когда вариантов немного (не более 5–7), и они включают операции одного типа, например, Создать, Открыть, Закрыть и т.п. Вторые применяются при большом количестве вариантов или их очевидных различиях, например, операции с файлами и операции с данными, хранящимися в этих файлах. На рис. 2.5 показана типичная структура алгоритма программы, организующей одноуровневое меню.

Алгоритм программы с многоуровневым меню обычно строится по уровням, причем выбор команды на каждом уровне осуществляется так же, как для одноуровневого меню.

Интерфейс-меню предполагает, что программа в любой момент времени находится либо в состоянии обслуживания меню (ожидания выбора со стороны пользователя), либо в состоянии выполнения операции. Пользователь, как правило, вынужден ожидать, пока выполняется выбранное им действие.

Рисунок 2.5 – Структура программы с интерфейсом-меню

Меню может быть построено различными способами. Простейший вариант реализации меню – вывод списка пунктов и предложение ввести номер пункта из этого списка. Более сложный вариант – список, по которому можно перемещаться с помощью клавиш (обычно клавиши управления курсором). Достоинства этого способа в том, что он удобнее, привлекательнее выглядит, не требует от пользователя соотнесения текста меню с номером пункта и уменьшает вероятность ошибки при выборе за счет того, что текущий пункт меню «подсвечивается».

В отличие от интерфейса-меню интерфейс со свободной навигацией обеспечивает возможность осуществления любых допустимых в конкретном состоянии операций, доступ к которым возможен через различные интерфейсные компоненты. На данный момент сформировался стандартный набор компонент пользовательского интерфейса, которые широко применяются в самых разнообразных программах и поддерживаются многими операционными системами и библиотеками. Поскольку даже разные реализации этих компонент подчиняются некоторым общим принципам управления, интерфейсы, построенные на их основе, привычны и понятны любому пользователю. Это является несомненным достоинством интерфейсов со свободной навигацией.

Внешний вид некоторых распространенных интерфейсных элементов в системе ОС Windows приведен на рис. 2.6. Перечислим эти компоненты (в скобках даны устоявшиеся английские названия):

- опция, флажок (checkbox), рис. 2.2, а;

- поле ввода (editbox), рис. 2.2, б;

- наборныйсчетчик (spin control, up/down control), рис. 2.2, в;

- кнопка (button), рис. 2.2, г;

- индикатор хода выполнения задачи (progressbar), рис. 2.2, д;

- ползунок (slider), рис. 2.2, е;

- списки: линейный (listbox, рис. 2.2, ж), выпадающий (combobox, рис. 2, з), древовидный (treecontrol, рис. 2.2, и);

- переключатель (radiobutton), рис. 2.2, к;

- меню (menu), рис. 2.2, л;

- панель инструментов (toolbar), рис. 2.2, м.

Существенной особенностью интерфейсов со свободной навигацией является способность изменяться в процессе взаимодействия с пользователем, предлагая выбор только тех операций, которые имеют смысл в конкретной ситуации (например, блокируя ввод в те или иные поля).


а)

б)

в)

г)

д)

е)

ж)

з)

и)

к)

л)

м)

Рис.2. Компоненты интерфейса со свободной навигацией

Как правило, интерфейсы этого типа реализуют, используя событийное программирование и объектно-ориентированные библиотеки, что предполагает применение визуальных сред разработки программного обеспечения. Тем не менее, несложные интерфейсы со свободной навигацией можно реализовать и на процедурно-ориентированном языке (например, Delphi) в однозадачной операционной системе без событийного управления (например, MS-DOS).

Для разработки интерфейса АРМ была использована среда программирования Delphi7.0. Эта среда программирования представляет собой систему, которая позволяет на самом современном уровне создавать как отдельные прикладные программы, так и разветвлённые комплексы, предназначенные для работы в портативных сетях и в Интернет. Основными особенностями данной системы программирования являются:

создаваемые ею программы, могут работать не только под управлением Windows;

сама она относится к классу инструментальных средств ускоренной разработки программ.

Delphi – это мощная система визуального, объектно-ориентированного программирования, позволяющая решать множество задач, а в частности:

создавать законченные приложения, решающие задачи от вычислительных и логических, до графических и мультимедийных;

быстро создавать профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке, удовлетворяющий всем требованиям Windows и автоматически настраиваемый на ту систему, которая установлена на компьютере пользователем;

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