Структура диалога типа меню и разработка экранных форм




Модули в Turbo Pascal

 

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

Каждый модуль аналогичен отдельной программе, т.е. имеет: главное тело, которое вызывается перед стартом программы и производит необходимые действия по инициализации, когда это необходимо. Каждый модуль - это библиотека объявлений, которую можно вставить и использовать внутри программы, что позволяет разделить программу на части и компилировать их отдельно. Например, модуль CRT содержит все объявления для программ работы с экраном.

Структура модуля.

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

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

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

Структура модуля похожа на структуру программы, но имеет и отличия:

имя_модуля;{Раздел интерфейса}список_модулей;

{Общие объявления. Список процедур и функций с указанием параметров}
implementation {Раздел реализации}список_модулей;

{Личные объявления. Реализация процедур и функций}{Раздел инициализации}

{код инициализации}

 

Заголовок модуля - слово UNIT, за которым следует имя модуля. Следующий элемент - ключевое слово INTERFACE. Это слово обозначает начало раздела интерфейса модуля, доступного для всех других модулей и программ, использующих этот модуль. В предложении uses указываются модули, которые может использовать этот модуль.

Слово uses может появляться в двух местах:

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

сразу же после слова implementation; в этом случае, любые объявления этого модуля могут использоваться только внутри раздела реализации. Это так же допускает циклические ссылки модулей.

Раздел интерфейса.

Это «открытая» часть модуля, она начинается ключевым словом INTERFACE, следующим сразу за заголовком, и ограничена ключевым словом IMРLЕMENTATION. Интерфейс определяет, что является видимым (доступным) для некоторой программы (или других модулей), использующих этот модуль. Любая программа, использующая этот модуль, имеет доступ к этим видимым элементам. В интерфейсе модуля можно объявить константы, типы данных, переменные, процедуры и функции.

Процедуры и функции, доступные для программы, использующей этот модуль описываются в разделе интерфейса. А их действительные тела - операторы, реализующие их, - в разделе реализации. Объявление forward не разрешается.

Тела всех обычных процедур и функций находятся в разделе реализации после раздела интерфейса, в котором перечислены их имена и заголовки. uses может появиться и в разделе implementation. Если в разделе реализации имеет место uses, то это слово следует сразу же за словом implementation.

Раздел реализации.

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

Предложение uses может появляться в разделе implementation. В этом случае uses следует непосредственно за ключевым словом implementation.

Если процедуры были объявлены как внешние, то в исходном файле должна быть директива {$L имя файла} в любом месте до конца модуля.

Обычные процедуры и функции, объявленные в разделе интерфейса - которые не являются встроенными - должны появляться в разделе реализации. Заголовок procedure (function) в разделе реализации должен быть такой же, как и в разделе интерфейса, или же иметь короткую форму. В краткой форме за ключевым словом (procedure или function) следует имя процедуры или функции. Подпрограмма содержит свои собственные локальные объявления (метки, константы, типы, переменные, процедуры и функции). За ними следует тело главной программы. Подпрограммы раздела реализации (неописанные в секции интерфейса), должны иметь полный заголовок procedure/funсtion.

Раздел инициализации.

Раздел реализации модуля заключен между словами implementation и end. Но если присутствует слово begin перед end, и операторы между этими словами, то получившийся составной оператор, похожий на тело главной программы, становится разделом инициализации модуля.

В разделе инициализации инициализируются структуры данных (переменных), используемые модулем или доступные программам, использующим этот модуль. Вы можете использовать этот раздел для открытия файлов. Например, стандартный модуль Printer использует этот раздел для открытия на вывод текстового файла Lst. Файл Lst впоследствии можно использовать в программах, в операторах Write или Writeln.

При выполнении программы, использующей некоторый модуль, раздел инициализации вызывается перед выполнением тела главной программы. Если в программе используется несколько модулей, раздел инициализации каждого модуля вызывается (в порядке, указанном в операторе uses программы) до выполнения тела главной программы.

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

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

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

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

Модуль компилируется таким же образом, как и обычные подпрограммы; возможна компиляция из интегрированной среды или с помощью командной строки. Но так как модуль не является непосредственно выполняемой единицей, то в результате его компиляции образуется файл с расширением.TPU (Turbo Pascal Unit), при этом имя файла (с расширением.TPU) должно совпадать с именем файла с исходным текстом модуля.

С помощью режима Compile главного меню системы Турбо Паскаль откомпилируем текст STAS. Для этого в меню Compile установим опцию Destination Disk (вместо Destination Memory) и откомпилируем с помощью опции Compile. На диске создается файл STAS.TPU. После выполнения компиляции и создания файла STAS.TPU на диске элементы (процедуры и функции) библиотечного модуля Stas доступны для использования без каких-либо дополнительных описаний.

Для того, чтобы получить доступ к интерфейсным объектам модуля, необходимо указать в программе имя нужного TPU-файла. Соответствующая конструкция называется спецификацией используемых модулей и имеет следующий вид: uses U1, U2, U3; где uses - служебное слово, U1, U2, U3 - идентификаторы используемых модулей. Эта специфика должна идти непосредственно после заголовка программы; если некоторый модуль использует объекты другого модуля, то такая спецификация должна следовать сразу после служебного слова interface.

Каждую вычислительную систему можно оценивать по двум критериям: точность и удобство.

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

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

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

Основные эргономические характеристики:

конструктивные особенности оборудования;

качество разработки диалога;

надежность систем;

чувствительность систем.

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

 

 

Рис. 1. Факторы, воздействующие на комфорт пользователя

 

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

Для оценки интерфейса существуют несколько критериев [8].Все они охватывают три основных аспекта:

простота освоения и запоминания операционной системы;

быстрота достижения целей задачи, решаемой с помощью системы;

субъективная удовлетворенность при эксплуатации системы.

С точки зрения программного обеспечения в состав интерфейса входят два компонента:

набор процессов ввода-вывода;

процесс диалога.

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

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

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

Традиционно выделяют четыре основные структуры типов:

вопрос-ответ;

меню;

экранных форм;

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

Требования к диалогу:

естественность;

последовательность;

краткость;

поддержка пользователя;

гибкость.

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

Данные должны располагаться таким образом, чтобы пользователь мог просматривать экран в логической последовательности и мог легко:

выводить нужную информацию;

идентифицировать связанные группы информации;

различать исключительные ситуации (сообщения об ошибках или предупреждения);

определять какое действие с его стороны требуется (и требуется ли вообще) для продолжения выполнения задачи.

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

Структура диалога типа меню и разработка экранных форм

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

Меню в виде блока данных на экране - это традиционный формат.

Меню в виде строки данных может появляться вверху или внизу экрана и часто остается в этой позиции на протяжении всего диалога.

Таким образом, посредством меню удобно отображать возможные варианты данных для ввода, доступных в любое время работы в диалоге. Еще один распространенный способ представления используется для отображения дополнительных меню в виде блоков данных, которые «выскакивают или выпадают» на экран в текущем положении курсора, либо «вытягиваются» непосредственно из строки меню верхнего уровня. Эти меню исчезают после выбора варианта.

В диалоге на базе меню имеет смысл либо значение выбранного пункта меню (содержимое объекта выбора), либо номер выбранного пункта меню (первый, второй и т.д.).

В идеале, экранное меню должно содержать 5-6 пунктов; следует избегать списка из 10 и более пунктов.

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

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

Диалог типа экранных форм обычно имеет следующие возможности:

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

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

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-03-31 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: