Графический интерфейс пользователя
Графический интерфейс пользователя, сокр. GUI (от англ. Graphical User Interface) — разновидность интерфейса пользователя, способ взаимодействия пользователя с компьютером, когда диалог человека и компьютера основан на манипуляции динамически выводимыми на экран объектами. Для выбора объекта и взаимодействия с ним может использоваться как прямое указание на объект с помощью тачскрина или светового пера, так и косвенное посредством курсора, управляемого с помощь мыши, клавиатуры или другого устройства. Элементы, с которыми пользователь может взаимодействовать, называются виджетами. В настольных компьютерах наибольшее распространение получила концепция WIMP.
История
Изначально компьютеры не имели интерфейса пользователя, только интерфейс оператора — индикаторную панель, выводящую данные о состоянии вычислительного процесса для целей отладки и контроля корректности его работы. С расширением решаемых с помощью ЭВМ задач появилась концепция пользователя — человека, не знающего внутреннего устройства ЭВМ и работающей на ней программы, но как-то взаимодействующего с ней. В специализированных управляющих ЭВМ и вычислительных комплексах эта задача могла решаться с помощью специализированного пульта управления, но применение этого подхода было ограничено одной задачей, и если эта задача достаточно сложна, требуется очень громоздкий пульт со множеством элементов управления. Альтернативой был ввод команды посредством телетайпа — такой интерфейс был более гибким, однако сложным для использования — требовалось знать большое количество команд, да и ввод команды требует хоть небольших, но затрат времени.
Появление графического интерфейса было невозможно без устройства отображения информации высокого разрешения, которым до конца XX века оставалась электронно-лучевая трубка. Впервые ЭЛТ для отображения информации в комплекте со световым пером была применена на компьютере Whirlwind в начале 1950-х, а позже — на серийных компьютерах AN/FSQ-7 и AN/FSQ-8, ставших основой системы ПВО SAGE. Световое перо позволяло указывать на конкретный объект на экране, однако большая часть действий производилась с помощью физических элементов управления.
По мере распространения графических дисплеев на основе электронно-лучевых трубок такой графическо-физический интерфейс стал использоваться в системах автоматизированного проектирования. Также примером ранних графических интерфейсов можно назвать первые видеоигры. Однако не было единого понимания принципов построения графических интерфейсов.
В 1960-е годы Даг Энгельбарт в научно-исследовательском институте Стэнфорда впервые свёл разрозненные примеры применения графических интерфейсов в единую систему. В 1968 году он провёл конференцию, которую позже назвали The Mother of All Demos, на которой он продемонстрировал возможности нового подхода к проектированию интерфейса пользователя, а также новый вид указывающего устройства — мышь. Впоследствии его концепция была перенята учёными из исследовательской лаборатории Xerox PARC. В результате, кроме всего прочего, на свет появляется концепция графического интерфейса WIMP (Windows, Icons, Menus, Pointers) и в рамках этой концепции создаётся компьютер Alto. Он не был выпущен как коммерческий продукт, но широко использовался на фирме как корпоративный инструмент Xerox.
В 1979 году Three Rivers Computer Corporation выпустила рабочую станцию PERQ, похожую по принципам построения на Alto. В 1981 году Xerox выпустила продолжение Alto — Star[англ.].
Коммерческое воплощение концепция WIMP получила в 1984 году в продуктах корпорации Apple Computer. Apple критиковали за отказ от командной строки в пользу графического интерфейса[1]. В 1985 году GUI с многозадачностью был использован в операционной системе AmigaOS.
Позднее GUI стала стандартной составляющей большинства доступных на рынке операционных систем и приложений. Примеры систем, использующих GUI: Mac OS, GEM, Atari TOS, Microsoft Windows, Solaris, GNU/Linux, NeXTSTEP, OS/2, BeOS, Android, iOS, Bada, MeeGo.
Хотя в подавляющем большинстве систем GUI является надстройкой для операционной системы, существуют и независимые его реализации. Известен вариант графической программы BIOS Setup, когда ещё до загрузки ОС управление настройками IBM PC-совместимой ЭВМ производится мышью, аналогично полноценному GUI. Также имеются GUI для МК, не требующие ОС.
Классификация
Можно выделить следующие виды графического пользовательского интерфейса:
- простой: типовые экранные формы и стандартные элементы интерфейса, обеспечиваемые самой подсистемой GUI;
- истинно-графический, двумерный: нестандартные элементы интерфейса и оригинальные метафоры, реализованные собственными средствами приложения или сторонней библиотекой;
- трёхмерный.
Концепция «делай то, что я имею в виду»
Одним из требований к хорошему графическому интерфейсу программной системы является концепция «делай то, что я имею в виду» или DWIM (англ. Do What I Mean). Согласно концепции требуется, чтобы система работала предсказуемо, чтобы пользователь заранее интуитивно понимал, какое действие выполнит программа после получения его команды.
Недостатки
- Большее потребление ресурсов в сравнении с текстовым интерфейсом.
Примечания
- ↑ 33 года назад Apple критиковали за отказ от командной строки в пользу графического интерфейса . www.macdigger.ru. MacDigger. Дата обращения: 31 января 2017. Архивировано 30 января 2017 года.
Литература
- Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб.: Символ-Плюс, 2009. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
- The Human–Computer Interaction Handbook / Andrew Sears & Julie A. Jacko. — New York, London: Taylor & Francis Group, 2008. — ISBN 978-0-8058-5870-9.
- Джеф Раскин. Интерфейс: новые направления в проектировании компьютерных систем = The Humane Interface: New Directions for Designing Interactive Systems.
- Aaron Marcus. Graphical User Interfaces // Handbook of Human-Computer Interaction / M.G. Helander, T.K. Landauer, P.V. Prabhu. — Elsevier, 1997. — P. 421—440. — ISBN 0 444 81876 6.
Ссылки
- Guidebook Архивная копия от 23 августа 2006 на Wayback Machine (англ.) — галерея графических интерфейсов
- The Real History of the GUI Архивная копия от 3 января 2022 на Wayback Machine (англ.)
- A History of the GUI Архивная копия от 2 ноября 2016 на Wayback Machine (англ.)