Главная >> Информация >> Что такое GUI и CLI

Что такое GUI и CLI

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

Справедливости ради отметим, что термины GUI, CLI и TUI популярны не только в Linux-среде. Эти слова – часть общекомпьютерного жаргона, и их можно услышать в любых технических обсуждениях, а не только в тех, которые связаны с Linux.


Содержание статьи

GUI – графический интерфейс пользователя

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

GIMP: GUI-приложение для обработки изображений

В Linux возможность графически взаимодействовать с операционной системой предоставляется так называемой средой рабочего стола. Поверх неё можно пользоваться GUI-приложениями, такими как GIMP, VLC, Firefox, LibreOffice, файловый менеджер и т.д. для решения различных задач.

5w+3lnMayBgAAAABJRU5ErkJggg==
VLC: медиапроигрыватель с GUI

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

CLI – интерфейс командной строки

CLI (Command Line Interface) – это программа в командной строке, которая читает вводимые команды и выполняет запрошенные действия. В целом, любая программа, которой можно пользоваться через команды из терминала, попадает в эту категорию.

sO3a6MB0cHEAAAAASUVORK5CYII=
APT: пакетный менеджер с CLI в Debian-based дистрибутивах

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

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

Ушёл ли CLI в прошлое? Вовсе нет. У командной строки есть свои преимущества, особенно если речь идёт о настройке Linux на глубинном уровне: поднятии сетевого брандмауэра, организации локальной сети или даже управлении пакетами.

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

Многие известные утилиты с GUI представляют из себя графическую обёртку для инструментов CLI. Например Handbrake, популярный медиа-конвертер с открытым исходным кодом, является GUI-надстройкой над CLI-приложением ffmpeg.

9uAczEvCZUVAAAAAElFTkSuQmCC
Рабочее окно Handbrake

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

TUI – текстовый пользовательский интерфейс

Этот термин встречается реже, чем первые два. TUI (Text User Interface) – это наполовину CLI и наполовину GUI. Непонятно, что это значит? Разберёмся поподробнее.

Как было сказано выше, работа со старыми компьютерами была целиком основана на CLI. Однако некоторый ограниченный спектр возможностей GUI можно имитировать и в текстовом терминале. Это и будет TUI: в отличие от интерфейса командной строки, в нём представлено больше виджетов и доступно управление как и с клавиатуры, так и с помощью мыши.

iNxsQgQhYAJG4oxpg4IoQQgghpE0q2w1UGXwAgNddq6HPXyBzliypZgMgbv5Lx76t0nIAq18RQgghhLRN1fYDleMPCMxfIKmblXzRsohWaHJXfrMBEDd1BRqmci0IcMQBhBBCCCFtJjX+QA3zF1S2JGAJS1hJiwJtq4v9f3I9fLLWEkkRAAAAAElFTkSuQmCC
Links: терминальный браузер

TUI – это сокращение для text-based user interface (текстовый пользовательский интерфейс) или terminal user interface (терминальный пользовательский интерфейс). Слово "текстовый" в этом словосочетании означает, что всё показанное на экране, в сущности, представляет собой большой текст – набор символов, с помощью которого имитируются различные элементы управления, а слово "терминальный" – что обратиться к этому интерфейсу возможно только из терминала.

TUI-приложения не так популярны, как GUI и CLI, но примеров можно найти множество. Так, к этой категории относятся текстовые браузеры и текстовые игры.

ADdgX4hOwBHuAAAAAElFTkSuQmCC
Змейка с TUI

Ещё один случай, когда TUI может встретиться – это если в процессе установки кодеков на Ubuntu необходимо принять EULA или сделать выбор из нескольких предложенных вариантов настройки. TUI сложнее в управлении, чем GUI и часто требует обучения, но пользоваться им всё-таки проще, чем командной строкой.

Выводы

Программы с TUI часто относят в категорию CLI, поскольку их интерфейс доступен только из текстовой консоли. Какого мнения на этот счёт будете придерживаться вы – выбор за вами. Надеюсь, вам понравилась эта статья и теперь вы знаете что такое GUI, CLI и TUI.

Оцените статью

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (10 оценок, среднее: 4,90 из 5)
Загрузка...

1 комментарий к “Что такое GUI и CLI”

  1. По-моему, в статье упущено главное - в чем польза CLI и почему в никсах он так важен. Преимущества CLI по сравнению с GUI - это возможности автоматизации, которые он дает:
    1) изменение поведения команд и поограмм за счет ключей и параметров;
    2) перенаправление ввода и вывода программ: например, вы можете, не меняя самой программы перенаправить ее вывод с консоли в файл или пайп (см.ниже)
    3) "склейка" нескольких программ при помощи пайпов - механизма, перенаправляющего выход одной программы на вход другой
    4) наконец, автоматизация взаимодействия программ за счет скриптов

    Ответить

Оставьте комментарий