Визуальный интерфейс

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

Пользователь отдает команды ОС путем манипулирования предоставленным ему набором образов с помощью манипуляторов и клавиатуры. Например, каталог на диске часто отображен в виде экранного окна, в котором файлы отображены как иконки либо надписи. Предположим, что нужно скопировать файл «1.txt» из каталога «/home/user/work» в каталог «/home/user/archive». Для этого пользователь, вместо того, чтобы писать команду вида:

cp /home/user/work/1.txt /home/user/archive/

может просто открыть на экран два окна, одно из которых соответствует каталогу «/home/user/work», другое – каталогу «/home/user/archive», и мышью перетащить надпись «1.txt» из первого окна во второе. Для пользователя-непрофессионала такое действие гораздо проще и естественнее, чем написание малопонятной команды.

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

Важно понимать, что тип интерфейса определяется сущностью способа взаимодействия пользователя с системой, а не используемыми изобразительными средствами. Вовсе не обязательно визуальный интерфейс использует устройство отображения, работающее в графическом режиме. Визуальный интерфейс может быть как текстовым, при котором визуальные образы на экране формируются с помощью обычных текстовых символов, возможно, дополненных псевдографикой (типы интерфейса оболочек FAR, Norton Commander, DOS Navigator), так и графическим, при котором визуальные образы рисуются на экране в графическом режиме и могут иметь практически неограниченное разнообразие. Но на суть интерфейса это не оказывает решающего влияния, хотя, безусловно, графический интерфейс внешне обычно выглядит намного привлекательнее.

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

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

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

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