Текстовый интерфейс пользователя | это… Что такое Текстовый интерфейс пользователя?

Bash — пример консольной программы

Пример оконного текстового интерфейса

Текстовый пользовательский интерфейс, ТПИ (англ. Text user interface, TUI; также Character User Interface, CUI) — разновидность интерфейса пользователя, использующая при вводе-выводе и представлении информации исключительно набор буквенно-цифровых символов и символов псевдографики. Характеризуется малой требовательностью к ресурсам аппаратуры ввода-вывода (в частности, памяти) и высокой скоростью отображения информации, поэтому широко использовался на начальном этапе развития вычислительной техники. Также, его разновидность — интерфейс командной строки — имеет отдельные преимущества в юзабилити перед графическим интерфейсом. Поэтому программы, основанные на ТПИ, имеют некоторое распространение до настоящего времени, особенно в специфических сферах и на маломощном оборудовании.

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

Программы с текстовым интерфейсом могут имитировать Оконный интерфейс, чему особенно способствует применение псевдографических символов.

ТПИ, использующий в качестве элементов интерфейса только и исключительно вводимые с клавиатуры текстовые строки (команды), называется интерфейсом командной строки (т. н. консольные программы — программы, использующие интерфейс командной строки, где информация выводится на консоль).

Особенности текстового интерфейса

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

В текстовом интерфейсе реализованы все базовые элементы интерфейса, используемые и в графическом интерфейсе — меню, кнопки, переключатели, флажки, выпадающие списки, полосы прокрутки и так далее. Многие программы реализовывали развитую оконную систему, чему способствовали библиотеки вроде CScape, D-Flat, Turbo Vision и многие другие, некоторые имели сменные темы оформления (например, DOS Navigator) и поддерживали различные устройства интерактивного взаимодействия, такие как мышь, джойстик, световое перо.

На программном уровне для ввода и вывода информации консольные программы используют стандартные устройства ввода-вывода (stdin, stdout, stderr), хотя могут открывать и другие файлы, сетевые соединения и совершать иные действия, доступные в выполняющей их среде. Вывод печатных символов в stdout и stderr приводит к появлению этих символов на устройстве вывода и к получению их пользователем.

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

Реализация текстового интерфейса

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

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

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

В 1970-х годы и позднее выпускались даже специальные устройства, реализующие текстовый интерфейс — текстовые терминалы, подключаемые через последовательный порт к компьютеру напрямую или через модем. С распространением персональных компьютеров функции текстового терминала, как правило, выполняет компьютер, тот, на котором выполняется консольная программа, или другой. Программы Telnet и ssh позволяют пользователю взаимодействовать с консольной программой, запущенной на удалённом компьютере (как правило, под управлением UNIX), через Интернет или локальную сеть. Программы xterm, rxvt, konsole и многие другие реализуют текстовый интерфейс посредством текстового окна в среде X Window System.

Альтернативный подход к консольному выводу был использован в персональных компьютерах, в частности (хотя не только), IBM PC под управлением DOS. Программа может не только выводить данные через stdout, но и прямо изменять содержимое определённой области памяти, связанной со знакогенератором монитора, приводя к немедленному изменению видимых на мониторе данных. Такие программы могут также работать в среде Microsoft Windows. Более того, Windows имеет поддержку текстовых окон, во многом превосходящую имевшуюся в DOS, в том числе и для приложений собственно Windows.

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

В POSIX-совместимых системах, таких как UNIX и Linux, работа пользователя с терминалом осуществляется при помощи особой подсистемы, называемой TTY-абстракцией.

Примеры консольных программ

  • Любая программа, получающая данные путём чтения stdin и отправку данных путём записи в stdout, по определению является консольной программой. Однако, такие программы могут обходиться и без пользователя, поскольку stdin и stdout могут быть связаны не с интерактивными устройствами (клавиатурой и монитором), а с файлами.
  • Текстовые программы для DOS, осуществляющие вывод в видеопамять EGA/VGA. Подобные программы работают также и в среде Microsoft Windows.
  • Unix shell, а также все утилиты, предназначенные для работы в этой среде.

Некоторые программы с ТПИ могут работать и в консольном режиме:

  • Midnight Commander (UNIX)
  • FAR Manager (Windows)

Виды интерфейсов пользователя операционных систем

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

Пользовательским интерфейсом называется набор приемов взаимодействия пользователя с приложением. Пользовательский интерфейс включает общение пользователя с приложением и язык общения.

Текстовые ОС

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

Первые настоящие операционные системы имели текстовый интерфейс. В настоящее время он также используется на серверах и компьютерах пользователей.

Графические ОС

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

Пассивные элементы управления — это графические элементы управления приложений (экранные кнопки, значки, переключатели, флажки, раскрывающиеся списки, строки меню и т.д.).

Примером исключительно графических ОС являются операционные системы семейства Windows. Стартовый экран подобных ОС представляет собой системный объект, называемый рабочим столом. Рабочий стол — это графическая среда, на которой отображаются объекты (файлы и каталоги) и элементы управления.

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

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

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

Речевые ОС

В случае SILK-интерфейса (от англ. speech – речь, image – образ, language – язык, knowledge – знание) – на экране по речевой команде происходит перемещение от одних поисковых образов к другим.

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

Реализация интерфейса

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

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

Дополнительную информацию об использовании интерфейса и пример см. в разделе «Интерфейс объектов».

Когда вы создаете новый функциональный блок, реализующий интерфейс, TwinCAT автоматически вставляет все методы и свойства этого интерфейса в новый функциональный блок в дерево

Реализация интерфейса в новом функциональном блоке

В текущем открытом проекте есть хотя бы один интерфейсный объект
1. Выберите объект проекта ПЛК или подпапку в дереве проекта ПЛК и в контексте выберите меню команд Добавить >
POU..
.
Откроется диалоговое окно Добавить POU .
2. Введите имя нового функционального блока в поле ввода Имя , например, «FB_SampleImp».
3. Выберите Функциональный блок.
4. Выберите Техника и нажмите кнопку.
5. В помощнике ввода выберите интерфейс, например «I_Itf1», из категории Интерфейсы и нажмите OK .
6. Чтобы добавить еще один интерфейс, нажмите еще раз и выберите другой интерфейс.
7. Дополнительно можно выбрать
Спецификатор доступа
для нового функционального блока из списка выбора.
8. Из списка выбора языка реализации Выберите, например, «Структурированный текст (ST)».
9. Нажмите Открыть .
TwinCAT добавляет функциональный блок FB_SampleImp в дерево проекта ПЛК, и открывается редактор. В первой строке написано:
FUNCTION_BLOCK FB_SampleImp IMPLEMENTS I_Itf1
Методы и свойства интерфейса теперь вставлены в дерево проекта ПЛК под функциональным блоком, и теперь вы можете ввести программный код в разделе реализации методов и свойств.

Реализация интерфейса в существующем функциональном блоке

Текущий открытый проект имеет функциональный блок, например, «FB_SampleImp», и как минимум один интерфейсный объект, например, «I_Itf1».
1. В дереве проекта ПЛК дважды щелкните POU FB_SampleImp.
Открывается редактор программных модулей.
2. Расширьте существующую запись в верхней строке FUNCTION_BLOCK FB_SampleImp с помощью IMPLEMENTS I_Itf1.
Функциональный блок FB_SampleImp реализует интерфейс I_Itf1.
3. Элементы (методы или свойства), определенные в интерфейсе, но еще не присутствующие в функциональном блоке, могут автоматически генерироваться в функциональном блоке путем выполнения команды
Реализовать интерфейсы
, доступные в контекстном меню функционального блока в дереве проекта.
Методы и свойства интерфейса теперь вставлены в дерево проекта ПЛК под функциональным блоком, и теперь вы можете ввести программный код в разделе реализации методов и свойств.

См. также:

  • Объект Функциональный блок
  • Документация по пользовательскому интерфейсу TC3: Команда Реализовать интерфейсы

404: Страница не найдена

ПоискWindowsServer

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

Что я могу сделать сейчас?

Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:

Поиск
  • Ознакомьтесь с последними новостями.
  • Наша домашняя страница содержит последнюю информацию о Windows Server.
  • Наша страница «О нас» содержит дополнительную информацию о сайте, на котором вы находитесь, SearchWindowsServer.
  • Если вам нужно, свяжитесь с нами, мы будем рады услышать от вас.

Поиск по категории

Облачные вычисления

  • Преимущества и ограничения Google Cloud Recommender

    Расходы на облако могут выйти из-под контроля, но такие службы, как Google Cloud Recommender, предоставляют информацию для оптимизации ваших рабочих нагрузок. Но…

  • Zadara выбирает нового генерального директора, поскольку основатель переходит на роль технического директора

    Йорам Новик, второй генеральный директор облачного стартапа Zadara, привносит в эту должность многолетний опыт руководства ИТ и рассказывает о …

  • Как работает маршрутизация на основе задержки в Amazon Route 53

    Если вы рассматриваете Amazon Route 53 как способ уменьшить задержку, вот как работает этот сервис.

Корпоративный настольный компьютер

  • 6 вариантов антивируса Mac для повышения безопасности в Интернете

    Организации, в управлении которых находятся настольные компьютеры с macOS, должны убедиться, что их продукты для обеспечения безопасности поддерживают компьютеры Mac. Обзор этих …

  • Должны ли организации включать собственный брандмауэр на Mac?

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