Текстовый интерфейс пользователя
![]() | Эту статью предлагается подведения итога обсуждения.
Последнее изменение сделано участником Danial109 (вклад · журналы) в 17:50, 24 октября 2024 (UTC; около 227 дней назад). Администраторам и подводящим итоги:
|

Те́кстовый по́льзовательский интерфе́йс, ТПИ (англ. Text user interface, TUI; также Character User Interface, CUI) — разновидность интерфейса пользователя, использующая при вводе-выводе и представлении информации исключительно набор буквенно-цифровых символов и символов псевдографики. Характеризуется малой требовательностью к ресурсам аппаратуры ввода-вывода (в частности, памяти) и высокой скоростью отображения информации. Появился на одном из начальных этапов развития вычислительной техники, при развитии возможностей аппаратуры, нацеленной на реализацию появившегося ранее интерфейса командной строки, который, в свою очередь, является наследником использования телетайпов в качестве интерфейса вычислительной техники. Интерфейс командной строки имеет ряд преимуществ в юзабилити перед графическим интерфейсом, поэтому программы с текстовым интерфейсом создаются и используются по сей день, особенно в специфических сферах и на маломощном оборудовании.
Недостатком подобного типа интерфейса является ограниченность изобразительных средств по причине ограниченности количества символов, включённых в состав шрифта, предоставляемого аппаратурой.
Программы с текстовым интерфейсом могут реализовывать оконный интерфейс, чему особенно способствует применение псевдографических символов.
Интерфейс командной строки
Текстовый интерфейс, воспроизводящий возможности телетайпа, то есть имитирующий прокручивающуюся на экране бесконечную ленту бумаги, на которую пользователь может вводить текст команд и ниже получать результаты её работы так же в виде текста, называется интерфейсом командной строки. Также такие программы часто называют консольными программами — потому что системы, где информация вводится и выводится через текстовую консоль, в основном реализуют именно интерфейс командной строки.
Особенности текстового интерфейса
В простейшем случае текстовый интерфейс использует
В текстовом интерфейсе могут быть реализованы все базовые элементы интерфейса, используемые и в графическом интерфейсе —
На программном уровне для ввода и вывода информации консольные программы используют стандартные устройства ввода-вывода (stdin
, stdout
, stderr
), хотя могут открывать и другие файлы, сетевые соединения и совершать иные действия, доступные в выполняющей их среде. Вывод печатных символов в stdout
и stderr
приводит к появлению этих символов на устройстве вывода и к получению их пользователем.
Консольные программы для более продвинутых операционных систем, особенно UNIX, как правило, способны работать на достаточно широком классе реализаций интерфейса с пользователем. Для упрощения написания таких программ широко применяется библиотека ncurses.
Реализация текстового интерфейса

Консольная программа не обязана заботиться о реализации самого взаимодействия с пользователем, ограничиваясь вводом-выводом на стандартные устройства, использованием библиотек типа ncurses или иных программных интерфейсов. Собственно взаимодействие с пользователем обычно осуществляет операционная система или иное программное обеспечение.
Классической реализацией текстового интерфейса, восходящей к первой половине
В соответствии с традицией использования консольными программами клавиатуры и АЦПУ для ввода и вывода соответственно взаимодействие таких программ с пользователем свелось к чтению из stdin и выводу на stdout. Таким образом, появилась возможность перенаправлять потоки ввода-вывода, осуществляя взаимодействие с пользователем посредством иных устройств, в том числе подключённых через
В
Альтернативный подход к консольному выводу был использован в персональных компьютерах, в частности (хотя не только),
Linux предоставляет ещё бо́льшие возможности для консольных программ. В частности, даже безо всякого графического интерфейса несколько одновременно запущенных программ могут бесконфликтно взаимодействовать с пользователем, создавая иллюзию наличия в системе нескольких консолей (виртуальные консоли).
В POSIX-совместимых системах, таких как UNIX и Linux, работа пользователя с терминалом осуществляется при помощи особой подсистемы, называемой TTY-абстракцией.
Примеры консольных программ
- Любая программа, получающая данные путём чтения stdin и отправку данных путём записи в stdout, по определению является консольной программой. Однако, такие программы могут обходиться и без пользователя, поскольку stdin и stdout могут быть связаны не с интерактивными устройствами (клавиатурой и монитором), а с файлами или потоками ввода/вывода других программ.
- Текстовые программы для DOS, осуществляющие вывод в видеопамять EGA/VGA. Подобные программы работают также и в среде Microsoft Windows.
- Unix shell, а также все утилиты, предназначенные для работы в этой среде.
Некоторые программы с ТПИ могут работать и в консольном режиме:
- Midnight Commander (UNIX)
- FAR Manager (Windows)
См. также
Ссылки
- Пользовательский интерфейс ОС. Командная строка, графический пользовательский интерфейс (GUI). Основные элементы GUI – окно, меню, кнопки, списки и т. д
- Командный (текстовый) интерфейс. Всякая операционная система имеет командный интерфейс (иногда в скрытой форме).
- 15. Пользовательский интерфейс: текстовый и графический.
![]() | Для улучшения этой статьи желательно: |