![](https://habrastorage.org/webt/6r/ol/sb/6rolsb_klec6ojjprihtqgoas-k.png)
В фантастическом фильме Стивена Спилберга «Особое мнение» 2002 года представлен футуристический и концептуальный компьютерный интерфейс. Здесь отрывок, в котором Том Круз использует его.
Все согласятся, что интерфейс этого будущего невероятен и желанен. Если призадуматься, что является его самым удивительным аспектом? Много лет назад можно было бы сказать, что это тонкие экраны. Или невероятная сенсорная технология. Сегодня у нас есть и то, и другое! На самом деле, то, что у нас есть сегодня, даже лучше; мы можем отображать на экране более двух цветов, намного лучше, что есть в антиутопическом будущем Филипа К. Дика.
Сегодня самым удивительным аспектом является то, что это интерфейс, который не заставляет ждать пользователя. Вместо того, чтобы показать ему анимацию, потому что он переключает приложение или запускает программу, он идет в ногу со всем, что пользователь говорит ему делать в реальном времени. Компьютер ждёт человека, а не наоборот.
В настоящее время помимо терминалов командной строки и нескольких других дополнительных технологий, современные пользовательские интерфейсы даже близко не приближаются к такому фантастическому будущему.
❯ Вначале была командная строка
Интерфейсы командной строки (CLI) доминировали на заре вычислительной техники. До того, как персональные компьютеры обрели популярность, они были предназначены исключительно для тех, кто выучил команды для работы с ними. Первые компьютеры, такие как машины IBM, Apple и ПК, приветствовали пользователей командной строкой — чем-то таким простым, как
C:\>_
, ожидая ввода команд.![](https://habrastorage.org/webt/w1/lx/xd/w1lxxdsbcvtaoj3qhjqmijkjurg.png)
Такие команды, как
dir
для просмотра файлов или type
для просмотра текстовых файлов, были нормой. Хотя этот подход имел свои преимущества с точки зрения прямого управления, он также был подвержен ошибкам пользователя, особенно при случайном вводе команд, таких как format
или rm -rf
в Unix.Затем, массовое производство персональных компьютеров привело к появлению графических пользовательских интерфейсов (GUI). Они представили иконки и разместили большую часть функций, которые можно было бы использовать прямо в UI. Цель состояла в том, чтобы свести к минимуму риск того, что пользователи непреднамеренно повредят систему. Хотя командная строка до сих пор используется программистами, с середины 1980-х годов GUI стал доминирующим режимом потребительских персональных вычислений — в частности, подмножество GUI, известное как WIMP (окна, значки, меню, указатель).
GUI, несомненно, стали прорывом в области UX, когда они впервые появились в Macintosh от Apple в 1984 году. Персональные компьютеры только начинали внедряться среди населения, и их функциональность была незнакома большинству. Начинающему пользователю нужно было понять и изучить, что может делать компьютер, и GUI позволял им делать это с помощью меню, иконок и виджетов. Они преодолевали разрыв между техническими и не-техническими специалистами.
![](https://habrastorage.org/webt/lt/q5/rk/ltq5rkq7jbepqhbnyks-4jtliu0.png)
Macintosh OS была революцией. И людей, использующих компьютеры, внезапно стало экспоненциально больше, потому что интерфейс стал более доступным для менее технически подкованной аудитории. Переход от CLI к GUI абстрагировал трудоёмкое вербальное общение между людьми и компьютерами и заменил его визуально привлекательными, дорогостоящими интерфейсами. С абстрагированием командной строки все стало возможным! Как далеко мы могли зайти?
Очевидно, далеко. В эпохальном 2007 году командную строку описывали как вышедшую из моды из-за её неумолимого синтаксиса и труднозапоминающихся команд. Внедрение графического интерфейса пользователя было настолько успешным в то время, потому что командная строка просто не казалась доступной для не-разработчиков.
Однако чем сложнее становилось программное обеспечение, тем сложнее было ориентироваться только с помощью графического интерфейса. GUI принесли с собой сложные меню и панели инструментов, часто заставляя пользователей чувствовать себя потерянными среди множества немаркированных кнопок. Страх нажать не ту кнопку был реальной проблемой. Хотя GUI были визуально привлекательны, они могли быть пугающими и разочаровывающими для пользователей, которые хотели более быстрого способа взаимодействия со своими компьютерами.
AutoCAD — яркий тому пример. Программное обеспечение для 2D- и 3D-чертежей впервые было выпущено в 1982 году. Его обширная функциональность привела к сложному пользовательскому интерфейсу, заваленному меню, подменю и подподменю. За эти годы он добавил головокружительное количество сочетаний клавиш, пытаясь помочь своим пользователям ориентироваться в широте и глубине его функций.
![](https://habrastorage.org/webt/lw/rq/li/lwrqlim9if5g5_ioruulp89nrac.jpeg)
Тем не менее, для среднего потребителя командная строка — это загадочное и немного пугающее место. Именно это побудило к попыткам сделать CLI более простым в использовании.
Например, в CLI Cisco был инструмент под названием Context Sensitive Help, который предлагал два типа справки (словесная справка и справка по синтаксису команды) при вводе
?
. Ранний текстовый редактор Vim имел командную строку. Он использовал команды типа :wq
для сохранения и выхода, что было быстро. А онлайн-IDE, Repl.it, попыталась объединить элементы GUI и CLI в то, что они назвали визуальной командной строкой или CLUI.Среди сложности GUI появился проблеск надежды в виде Поиска. Google продемонстрировал, что может найти что угодно в Интернете быстрее, чем пользователи находят что-либо на своих компьютерах. Это привело к идее обучения компьютера с помощью естественного языка.
В 2004 году Google перенесла эту концепцию на рабочий стол с помощью инструмента, который позволял пользователям искать как в Интернете, так и на своем компьютере файлы и программы с помощью всего нескольких нажатий клавиш. Внезапно набор текста стал стильным и эффективным способом взаимодействия с ПК, напоминающим командную строку, но более доступным.
![](https://habrastorage.org/webt/m-/rl/3a/m-rl3anearqadfb8hiobtjtejve.jpeg)
2007 год стал поворотным моментом для поиска в интерфейсах программного обеспечения. Excel представил автозаполнение формул, Visual Studio включил поиск файлов, который также выполнял функции командной строки, а Apple расширила свои возможности поиска, представив поиск в меню справки в OS X Leopard.
Благодаря этим инновациям Поиск стал неотъемлемой частью пользовательского опыта. Пользователям больше не приходилось расшифровывать зашифрованные команды, такие как
dir
; Вместо этого они могли искать нужный инструмент, используя естественный язык.❯ GUI vs CLI
Но графические интерфейсы работают хорошо тогда, когда количество альтернативных элементов или действий невелико. Графический интерфейс плохо масштабируется — даже поиск записей электронной почты утомителен.
Стандартные графические интерфейсы с их выпадающими меню, кнопками проверки и древовидными списками просто не могут сравниться с диапазоном опций, которые текстовый интерфейс предоставляет без усилий. Всего пятью буквенно-цифровыми символами вы можете выбрать одну из сотни тысяч возможных последовательностей. И выбор любой последовательности происходит так же быстро, как и любой другой последовательности (ввод пяти символов занимает примерно 1 секунду). Попробуйте придумать нетекстовый интерфейс, который мог бы сделать то же самое!
![](https://habrastorage.org/webt/8q/em/d1/8qemd1dl0frodrdq1eu1gxhgs98.jpeg)
Типичный WIMP
У системы WIMP есть очевидные преимущества. Она упрощает понимание того, как работает компьютер, прикрепляя метафоры физического мира ко всем действиям. Мы настолько привыкли к системам WIMP, что может потребоваться минута, чтобы вспомнить, в какой степени ее основные строительные блоки сформированы: «Файлы» помещаются в «папки», «удалённые» элементы отправляются в «корзину», действия разбиваются на разделы в «меню» панели задач в верхней части окна, а значки, такие как дискета, отражают такие действия, как сохранение файла (возможно, пришло время обновить его).
Использование компьютера с графическим интерфейсом, требующим много перемещений и кликов, как правило, несколько медленнее, чем использование компьютера с командной строкой, но кривая обучения гораздо круче в интерфейсе командной строки, где визуальной метафоры не существует, а каждое действие требует знания определённой команды. Клики, копирование и создание папок на ПК требуют нескольких щелчков или сочетаний клавиш. В командной строке это требует знания таких команд, как
cd
, cp
и mkdir
.Освоение командной строки имеет явные преимущества. Многие программисты утверждают, что система WIMP только замедляет их. Например, графический интерфейс использует больше аппаратного обеспечения компьютера, чем текстовый интерфейс. Гики любят командные строки просто потому, что они хотят знать, что делают. Эту идею овладения командной строкой можно увидеть и в других отраслях, помимо разработки программного обеспечения и оборудования. Блумбергский терминал, широко используемый в финансовой отрасли, имеет не лучший вид, но опытные пользователи, которые освоили эту неэлегантную систему, работает на ней исключительно с помощью клавиатуры.
![](https://habrastorage.org/webt/x7/1q/m-/x71qm-hzy8jmaxven_zhatlck60.jpeg)
Блумбергский терминал
Это касается не только настольных компьютеров, но и смартфонов. В современном мире у каждого из нас в карманах есть потрясающая мощь лучших компьютеров в истории человечества. Вычислительная мощность на кончиках наших пальцев была бы невообразимой даже для самых смелых мыслителей тридцать лет назад.
Эти мощные устройства должны продвигать наши рабочие процессы вперёд. И всё же, почти без исключения, мы ждём наши компьютеры, а не наоборот. Мы привыкли думать, что ждать загрузки приложения и программ более 30 секунд или прерывать рабочий процесс, чтобы посмотреть полусекундную анимацию тысячу раз в день, совершенно нормально.
Подумайте обо всех анимациях, которые среднестатистический пользователь видит за день: переключение между пространствами в Mac OS, разблокировка 1Password, ожидание, пока iOS покажет SpringBoard после нажатия кнопки «Домой», переход в полноэкранный режим из приложения Mac OS или переключение между вкладками в мобильном Safari.
Однажды Apple поймёт, что они оставили зияющую дыру в своей стратегии UX и что переключение задач с помощью Cmd + Tab тоже должно быть анимировано. Умножьте длину этой анимации на среднее количество переключений задач в день, на количество пользователей, на их стоимость в секунду, и вы увидите, что миллионы долларов в год в глобальной производительности испарились за одну ночь.
Анимация — это особенно вопиющий визуальный трюк, но есть и другие: пустое пространство настолько экстравагантное, что на экране может поместиться лишь небольшое количество контента; слишком большой размер шрифта; подменю, где ряд ссылок был бы не хуже; немаркированные значки, которые выглядят аккуратно, но оставляют пользователей гадать, что они делают; фиксированные заголовки, которые скрывают контент. Список можно продолжать.
❯ Выбирай командную строку
Хотя Поиск стал значительным улучшением, сочетания клавиш оставались более быстрым способом навигации и управления цифровыми технологиями, особенно для опытных пользователей. Однако эти сочетания клавиш часто казались секретными кодами, известными лишь избранным, что делало их сложными для изучения новичками. Задача заключалась в том, чтобы сделать сочетания клавиш более доступными и понятными для всех. Сочетание поиска и командной строки привело к созданию палитры команд.
Один из самых ранних примеров современной палитры команд принадлежит Джо Скиннеру, создателю Sublime Text, который анонсировал её как часть бета-версии Sublime Text 2 в 2011 году. Это был большой шаг вперед в UX для программистов, уже привыкших к использованию командной строки. Это не только помогло им двигаться быстрее, используя только клавиатуру, но и означало, что им больше не нужно было запоминать все сочетания клавиш. Вместо этого они могли вводить то, что хотели, и палитра команд интеллектуально находила и выполняла нужное действие.
![](https://habrastorage.org/webt/tm/zn/ma/tmznmalqn5yj32xf_wrcsfd-nnu.png)
Sublime Text
Палитра команд обычно состоит из трёх основных элементов: одного сочетания клавиш для вызова палитры, нечеткого сопоставления для поиска команд и способа просмотра прямых сочетаний клавиш для будущего использования. Этот дизайн интерфейса взял лучшее из терминала и графических интерфейсов, объединив их в удобное для пользователя и эффективное решение.
Сегодня концепция палитр команд распространилась на различные программные приложения, став стандартной функцией во многих из них. Такие инструменты, как Photoshop, MS Office, Notion, Nuclino и Deepnote, внедрили палитру команд как средство упрощения взаимодействия с пользователем. Кроме того, голосовые помощники, такие как Siri, Alexa и Google Assistant, по сути, приняли концепцию палитры команд, позволяя пользователям выполнять задачи с помощью голосовых команд, полностью устраняя необходимость в визуальном интерфейсе.
Разработки в области голосовых интерфейсов намекают на возможность расширения этого до палитр команд. А GPT-3 от OpenAI не просто открыл двери для забавных бесед с чат-ботами, которыми можно похвастаться в соцсетях, но и вывел модели обработки языка на новый уровень.
Это, в сочетании с голосовыми командами, может стать большим достижением в плане доступности, упрощая навигацию по продукту для любого человека без особых предварительных знаний. Это заставило бы палитры команд выйти на шаг за рамки «только клавиатуры».
![](https://habrastorage.org/webt/v-/1f/l1/v-1fl1trsjfvx1egopeay1ory5c.gif)
Палитра команд Windows
Постепенно, а затем внезапно, как кажется, командная строка вернулась, помогая с ведением журнала, рабочими процессами, сочетаниями клавиш и другими вспомогательными функциями. Теперь мы достигли следующего поколения: командная строка, которая одновременно мощная и доступная; инструмент, который эффективен для технических пользователей без пугающей кривой обучения прошлых десятилетий. Более того, мы видим, как компании извлекают выгоду из этого увлечения скоростью и эффективностью: например, Superhuman, который позиционирует себя как «самый быстрый опыт работы с электронной почтой из когда-либо созданных».
Superhuman, современная альтернатива Gmail, имеет собственную командную строку, активируемую нажатием Command + K. Навигация в приложении разработана таким образом, что движения пользователя естественно быстры. Пользователь вынужден использовать клавиатуру, а не мышь или трекпад. Но Superhuman — это лишь один пример возвращения к CLI. Возможно, наиболее заметным из них является Stripe, которая в ноябре 2019 года объявила о выпуске собственного интерфейса командной строки.
Другие примеры включают:
- Linear, инструмент отслеживания ошибок и современная альтернатива Jira.
- Notion и Slack, которые размещают свои основные инструменты за меню с косой чертой (/).
- Amie, приложение для повышения производительности.
- Quill, профессиональный обмен сообщениями для групп и коман.
- Slapdash, который объединяет приложения под одной панелью команд.
![](https://habrastorage.org/webt/vr/jp/pw/vrjppwvxubdnkot6b2_kln52kag.png)
Википедия через веб-браузер командной строки
Существует множество веб-браузеров командной строки. Обычно на ум приходит классический Lynx, а также ELinks. Оба они способны отлично просматривать базовые веб-сайты HTML.
WordGrinder — это текстовый процессор на базе терминала.
Можно создавать и проводить презентации полностью из терминала. Программа называется «tpp» (Text Presentation Program), и она есть практически в каждом репозитории на планете.
Midnight Commander, который также известен как просто mc. Открытый «клон» знаменитого файлового браузера Norton Commander.
cmus — это музыкальный проигрыватель.
То, что можно было бы назвать менеджером окон в графическом рабочем столе, в терминалах называется терминальным мультиплексором — та же идея, более или менее. Существует три терминальных мультиплексора, которые большинство людей склонны использовать: GNU Screen, tmux и Byobu.
![](https://habrastorage.org/webt/g4/pq/uh/g4pquh4s0nxqum-z1f5i--j6gtw.png)
Три терминала Windows в Byobu
По своей сути шаблон пользовательского интерфейса командной строки быстрый, понятный и расширяющий возможности, заставляя даже не-разработчиков чувствовать себя хакерами следующего поколения. В отличие от любых современных интерфейсов, терминал быстрый и отзывчивый. В нем нет анимации или другого лишнего визуального багажа.
Составность современных пользовательских интерфейсов практически нулевая. Даже копирование текста из современного веб-приложения может быть сложной задачей, если элементы HTML не вложены оптимально.
Многие из разработчиков создают веб-приложения для других людей, одновременно избегая их сами, насколько это возможно. В то время как пользователи перемещаются с обычной скоростью по страницам в Интернете, они сидят в терминальных средах, которые не просто быстры, но и обещают невероятные достижения в производительности для любого, кто готов потратить время на их освоение.
Если вы спросите веб-дизайнера об элементах практического дизайна в современных интерфейсах, он расскажет вам о разборчивости текста, интуитивности и пустом пространстве. Красивые и дружелюбные пользовательские интерфейсы — это хорошо, но истинные ценности хорошего интерфейса — это скорость и эффективность, чтобы сделать их пользователей максимально продуктивными. Успешный интерфейс — это не тот, который хорошо выглядит на неподвижном снимке экрана, это тот, который максимизирует производительность и позволяет продолжать двигаться.
❯ Дорога вперед
Но ни терминал, ни сегодняшние десктопные и веб-приложения не являются тем, как должно выглядеть будущее, но терминал всё же ближе.
К сожалению, терминалы тоже не лучшая технология. Хотя они лучше альтернативы во многих отношениях, они не смогли угнаться за какими-либо достижениями последних тридцати с лишним лет. Командная строка, конечно, эффективна, но она утомительна. Она устраняет всю двусмысленность, обнажает все скрытые предположения и жестоко наказывает лень и неточность.
Вот некоторые вещи, из которых терминалы могли бы черпать вдохновение:
- Насыщенные элементы мультимедиа: изображения, видео, табличные результаты и т. д. Терминалу нужен был ответ на них с 1985 года, но до сих пор его нет.
- Шрифты. Моноширинный — лучшее семейство шрифтов для программирования, но объективно не оптимален для чтения. Мы должны иметь возможность смешивать шрифты в одном интерфейсе терминала для лучшей читаемости.
- Пробелы и высота строки: используемые в умеренных количествах, они помогают сделать элементы пользовательского интерфейса более отличительными, а текст — более разборчивым.
Терминалам также нужно много других вещей, прежде чем они когда-либо станут приемлемой заменой графического интерфейса для большинства людей. Например, элементы пользовательского интерфейса, которые не построены вокруг символов ASCII.
Нам нужна перезагрузка. Нам нужны наборы инструментов, которые быстры, последовательны, не содержат ошибок и компонуются по умолчанию, чтобы хорошие интерфейсы могли создавать не только лучшие разработчики/дизайнеры в мире, но и могли бы быть разумно ожидаемы даже от начинающих специалистов в отрасли.
Мы должны быть честны с собой и выступить против антишаблонов дизайна, которые продвигают показную роскошь в ущерб эффективности. Мы должны перестать нянчиться с пользователями и попытаться поднять новичков и менее технически подкованных до уровня современных продвинутых пользователей, а не создавать программное обеспечение, разработанное для наименьшего общего знаменателя. Нам нужно больше приложений, которые подталкивают своих пользователей к совершенствованию.
Есть будущее, в котором наше программное обеспечение будет делать всё, от регистрации ошибки до погашения кредитной карты, быстро и эффективно, но путь, по которому мы идём сегодня, — это не он.
ИИ кажется естественным следующим шагом для командной строки. Видя, как ChatGPT и ему подобные захватывают мир, начинаешь задумываться: «что дальше?» Станет ли Интернет одной большой палитрой команд, которая содержит все ответы и выполняет все действия? Остаётся просто надеяться, что никто не введёт
format
или rm -rf
.Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩
![](https://habrastorage.org/webt/u9/vg/io/u9vgio3hxj12h5u7j3un0wx_zpk.png)
![](https://habrastorage.org/webt/eg/5v/vr/eg5vvr9qhvljcvotvohj5crav8m.png)
Комментарии (29)
ildarz
28.08.2024 08:23+16У терминала есть фатальный и неискоренимый недостаток - прежде, чем быстро набрать быструю и офигенно эффективную команду, вы должны, для начала, вообще узнать о ее существовании, а потом еще и выучить ее синтаксис. В то время как графические интерфейсы обладают свойством, которым терминал обладать не может в принципе - та самая "интуитивная понятность". И вместо того, чтобы тратить время на изучение команд, человек просто сразу решает конечную задачу.
А если говорить о привлечении к работе всяких ИИ-ассистентов - то для подавляющего большинства применений терминал там опять-таки будет лишним звеном, потому что целевое назначение интерфейса - собственно выполнить задачу, а не преобразовать ее в текстовый вид. Отсюда вечная (как минимум до появления нейроинтерфейсов) ниша терминалов - узкоспециализированная работа в некоторых областях.
2medic
28.08.2024 08:23+6Я бы ещё добавил, что эффективная работа в терминале требует навыка слепого набора текста, без которого в терминале работать становится несколько проблематично. Если оператор медленно набирает двумя пальцами, уткнувшись взглядом в клавиатуру, то крайне велика вероятность пропустить опечатку, с последующим разгадыванием квеста: почему же не сработала команда?
Free_ze
28.08.2024 08:23+2графические интерфейсы обладают свойством, которым терминал обладать не может в принципе - та самая "интуитивная понятность"
А откуда эта интуитивная понятность берется? У GUI интерактивная природа - перед глазами пользователя знакомые интерактивные элементы, с которыми можно взаимодействовать. Аналогичный опыт будет и с CLI, если вызвать
theapp --help
и пробежаться глазами по ключам - они типовые, зачастую.2medic
28.08.2024 08:23и пробежаться глазами по ключам - они типовые, зачастую.
Зачастую они противоречивые и не логичные. Т.к. не было никого, кто бы координировал разработку утилит командной строки и применял хоть какие-либо стандарты. Совершенно непонятно, почему для отметки схемы в команде pg_dump используется ключ -n, или почему у pg_dump есть ключ -f, а у pg_restore его нет.
Если что, я в командной строке сидел ещё во времена ДВК-3. Но как только перестаёшь постоянно выполнять некие повторяющиеся действия, так из головы постепенно улетучиваются ключи, опции, и даже имена самих команд.
Да даже постоянно повторять одни и те же действия, с риском опечаток, и необходимостью совершать дополнительные действия, может быть утомительно.
Простой пример: мне нужно перейти в некий каталог (какой не помню), и что-то в нём сделать. Для начала придётся десяток раз вызвать ls(dir)/cd. mc или Norton Commander куда как приятнее. Особенно если выучишь хоткеи.
CLI, как и игра на пианино, требует постоянной практики.
Free_ze
28.08.2024 08:23Зачастую они противоречивые и не логичные.
Это уже вопрос дизайна. Кнопки запросто могут быть такими же.
почему для отметки схемы в команде pg_dump используется ключ -n
Впрочем, там есть и более очевидный ключ
--schema
.почему у pg_dump есть ключ -f, а у pg_restore его нет.
-f filename --file=filename Specify output file for generated script, or for the listing when used with -l. Use - for stdout.
Для начала придётся десяток раз вызвать ls(dir)/cd.
Попробуйте тыкать в процессе набора путей, тогда может хватить одной
cd
. Автокомплит - важная штука в CLI.Norton Commander куда как приятнее
Хороший пример не самого очевидного GUI, имхо. Много возможностей - много хитрых кнопок и хоткеев, которые таки тоже нужно разучивать.
Free_ze
28.08.2024 08:23Попробуйте тыкать
Tab
в процессе набора путей...Обрамление угловыми стрелками съело слово
dv0ich
28.08.2024 08:23+3Почти со всеми используемыми мной GUI-программами я научился работать методом тыка, без чтения справок и документаций. С терминальными прогами такое не прокатывает. Вот и всё.
(терминал использую каждый день, если что)
Free_ze
28.08.2024 08:23+2Почтисо всеми используемыми мной CLI-программами я научился работать просто читая текст, не ползая по меню, не изучая пиктограмы и расположение кнопок. С оконными прогами такое не прокатывает. Вот и всё.
Kahelman
28.08.2024 08:23+1Вы таки с SAP/R3 не работали. Когда куча полей/ вкладок и фиг его знает что куда вводить надо. :)
Ещё тест: попробуйте в Windows Explorer 5 файлов по макаке переименовать (например Добавить _old перед расширением)
И расскажите об успехах :)
ildarz
28.08.2024 08:23theapp --help
'theapp' is not recognized as an internal or external command,
operable program or batch file.:(.
P.S. Но, может быть, надо было Theapp? Или the_app? Или app? Или appcli? Или сначала надо сделать appsetup -vfdx --o 4 --P и только потом theapp?
LaRN
28.08.2024 08:23+1С gui почти те же сложности что и с cli. Попробуйте в блендере найти инструменты для скульптинга, если вы первый раз блендер видите. То же касается и ide например idea. Там есть gui, но реально быстро все происходит, когда пользуешся short cut-ми.
2medic
28.08.2024 08:23+2Как-то автор перескочил через TUI. UI не обязательно может быть графическим. Он вполне может быть себе текстовым. Тот же небезызвестный Norton Commander тому пример. А уж сколько софта было написано на текстовом фреймворке TurboVision…
GeorgeTudosi
28.08.2024 08:23Как-то автор перескочил через TUI.
Концептуально это то же самое, что и GUI, только с худшим качеством картинки.
Вообще типов интерфейсов сильно больше, конечно. Основные — командная строка, мышь (или аналог), и как промежуточный вариант — мышь + горячие клавиши. Кто из них будет удобнее и быстрее, зависит еще и от устройства. Например, сомневаюсь, что командная строка будет в общем случае быстрее на устройстве с тачскрином без физической клавиатуры.
А еще всякая экзотика (?) типа сенсоров ускорения и ориентации, указания взглядом (как в некоторых фотоаппаратах высокого класса и, говорят, в некоторых системах военного назначения), перчатки и прочие датчики виртуальной реальности и так далее. Экзотика эта делается, очевидно, не на ровном месте, а там, где решаемые задачи не позволяют использовать более распространенные интерфейсы.
2medic
28.08.2024 08:23+2Концептуально это то же самое, что и GUI, только с худшим качеством картинки.
Вот тут готов поспорить. Битовая матрица символа считывалась на отлично даже на древних мониторах размером 25 строк на 80 символов.
В своё время разрабатывал прекрасные TUI для ДВК-3.
Плюсом у буковок можно поменять цвет, если монитор не монохромный, и подрисовать им фон. Таким образом можно выделять хот-кеи и активные пункты меню. И даже рисовать тени у открытых окон, имитируя Z-order.
Скрытый текст
Естественно, всякие рюшечки, в виде буковок различного размера, и всякие пиктограммки не нарисуешь.
Но как по мне, TUI не заслуженно забыт и оставлен в сторонке. Ничто не мешает писать утилиты командной строки таким образом, чтобы они не только получали параметры, опции, команды, но и вполне себе обладали интерфейсом пользователя.
Как, например, htop.
yri066
28.08.2024 08:23Я как раз отношусь к тому типу пользователей, которые через UI с помощью мышки выполнят работу быстрее, чем тратя уйму времени на гугление нужных команд и вставки их в терминал (у меня уже был случай, что скопированная команда удалила из системы все пакеты и мне пришлось переустанавливать linux (в команде не было команд remote или rm и поэтому для это было неожиданно))
*PS мой уровень владения терминалом это гугление команд
dv0ich
28.08.2024 08:23+4Все согласятся, что интерфейс этого будущего невероятен и желанен.
Нет, я не соглашусь. У вас через час работы с таким UI руки отвалятся.
event1
28.08.2024 08:23Если все графические интерфейсы убрать, то дураки не смогут пользоваться компьютерами. Хорошо же будет, нет?
P.S. автор, спасибо за забавный подстрочник, конечно, но английский текст русскими словами — это уверенный минус
M_AJ
28.08.2024 08:23Хорошо же будет, нет?
Нет. Компьютеры нужны чтобы упрощать работу совершенно разным людям. От того, что вылечить вас, оформить вам документы или посчитать и перевести вам зарплату будет дороже и дольше, ваша жизнь вряд ли улучшится.
event1
28.08.2024 08:23Простые пользователи не обязательно дураки. Обычные люди пользовались компьютерами и до изобретения графических интерфейсов. Выучить десяток команд для обычного человека — пара пустяков.
M_AJ
28.08.2024 08:23Обычные люди пользовались компьютерами и до изобретения графических интерфейсов
Совершенно не в тех масштабах что сегодня. Графический интерфейс дал возможность пользоваться компьютером тем, кто просто не стал бы пользоваться им без него.
Выучить десяток команд для обычного человека — пара пустяков.
А если их не десяток, а пять десятков? При этом 20 ходовые, 20 нужны раз в месяц, а ещё 20 раз в год? Тогда когда человеку понадобится какая-то из последних 20 команд он будет вынужден лезть в справочник. А графический интерфейс позволяет тут же, рядом с параметром разместить и документацию. Не нужно точно помнить то ли там max_limit, то ли max_threshold, то ли от 1 до 10 принимает значение, то ли от 1 до 50. Достаточно помнить что что-то одно из этих двух, где-то на последней вкладке, и диапазон возможных значений может быть прямо рядом с полем подписан, и даже более подробная всплывающая справка тут же, при наведении курсора на знак "?"
event1
28.08.2024 08:23Графический интерфейс дал возможность пользоваться компьютером тем, кто просто не стал бы
Вопрос не про тех кто что-то там стал бы. На работе не спрашивают стали бы вы, или нет. Там выдают компьютер и пишут инструкцию. Если сотрудник не справляется, его заменяет другой, который справляется.
M_AJ
28.08.2024 08:23Если сотрудник не справляется, его заменяет другой, который справляется.
Или не заменяет, если тех кто владеет этим навыком на рынке меньше, чем рабочих мест, где этот навык нужен. Да и "справляется" понятие растяжимое, может он просто тратит на эти задачи больше времени, вспоминая редкие команды, или листая справочник, но в целом справляется не хуже среднего.
Askodon
28.08.2024 08:23все вопросы которые вы бы хотели решить, уже решены во всяких wezterm, alacritty и kitty.
FunArt
28.08.2024 08:23Мне кажется, сейчас с появлением GPT, количество почитателей командной строки должно резко возрасти. Когда решаешь какие-то задачи в ОС с помощью ИИ, гораздо проще получить решение через командную строку. Чем добиваться от GPT помощи по кнопкам интерфейса системы.
Borjomy
28.08.2024 08:23+1Так как разработка интерфейса является самым затратным занятием, мало того, еще и локализации, это дело еще и дорогое и практически бесконечное. Поэтому разработчик, выбирая между простотой разработки и удобством пользователя, останавливается всегда на первом моменте.
Заметьте, диалоговые системы в программах, использующие командную строку, практически отсутствуют. А там, где они есть, это коммерческие продукты.
Командная строка это не про удобство. Разработчик экономит свое время и крадет ваше.
Знаете, что поразительно? До сих пор никто не удосужился стандартизировать набор аргументов командной строки в диалоговом режиме. Всем плевать. Это же надо о пользователе думать. А такое просто не принято в этой сфере.
ZekaVasch
Текст сочинен нейросетями ?