Текстовый интерфейс пользователя | это… Что такое Текстовый интерфейс пользователя?
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 .
- 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 по умолчанию отключен, поэтому ИТ-специалисты могут задаться вопросом, стоит ли настраивать функцию безопасности.