Grafische Benutzeroberfläche - Graphical user interface

Die vorläufige Dynabook-GUI (Smalltalk-76 läuft auf dem Xerox Alto )

Die grafische Benutzeroberfläche ( GUI / í ju / JEE-you-Auge oder / ɡ U i / ) ist eine Form der Benutzerschnittstelle , die ermöglicht Benutzern an mit elektronischen Geräten zu interagieren durch grafische Symbole und Audioanzeige wie primäre Notation , anstelle von textbasierten Benutzeroberflächen , eingegebenen Befehlsbezeichnungen oder Textnavigation. GUIs wurden als Reaktion auf die wahrgenommene steile Lernkurve von Befehlszeilenschnittstellen eingeführt(CLIs), die erfordern, dass Befehle auf einer Computertastatur eingegeben werden .

Die Aktionen in einer GUI werden normalerweise durch direkte Manipulation der grafischen Elemente ausgeführt. Neben Computern werden GUIs in vielen tragbaren Mobilgeräten wie MP3- Playern, tragbaren Mediaplayern, Spielgeräten, Smartphones und kleineren Haushalts-, Büro- und Industriesteuerungen verwendet . Der Begriff GUI dazu tendiert zu anderen Nieder- nicht angewendet werden Anzeigeauflösung Arten von Schnittstellen , wie beispielsweise Videospiele (wobei Head-up - Display ( HUD ) ist bevorzugt), oder nicht , einschließlich der Flachbildschirme, wie volumetrische Anzeigen , weil der Begriff beschränkt ist auf der Umfang der zweidimensionalen Bildschirme, die allgemeine Informationen beschreiben können, in der Tradition der Informatikforschung am Xerox Palo Alto Research Center .

Benutzeroberfläche und Interaktionsdesign

Die grafische Benutzeroberfläche wird auf dem Computerbildschirm präsentiert (angezeigt). Es ist das Ergebnis verarbeiteter Benutzereingaben und normalerweise die Hauptschnittstelle für die Mensch-Maschine-Interaktion. Die auf kleinen Mobilgeräten beliebten Touch-Benutzeroberflächen sind eine Überlagerung der visuellen Ausgabe mit der visuellen Eingabe.

Das Entwerfen der visuellen Komposition und des zeitlichen Verhaltens einer GUI ist ein wichtiger Bestandteil der Softwareanwendungsprogrammierung im Bereich der Mensch-Computer-Interaktion . Ihr Ziel ist es, die Effizienz und Benutzerfreundlichkeit für das zugrunde liegende logische Design eines gespeicherten Programms zu verbessern , eine Designdisziplin namens Usability . Dabei werden Methoden des nutzerzentrierten Designs eingesetzt, um sicherzustellen, dass die in das Design eingebrachte Bildsprache gut auf die Aufgabenstellung zugeschnitten ist.

Die sichtbaren grafischen Oberflächenfunktionen einer Anwendung werden manchmal als Chrome oder GUI (ausgesprochen gooey ) bezeichnet. In der Regel interagieren Benutzer mit Informationen, indem sie visuelle Widgets manipulieren , die Interaktionen ermöglichen, die für die Art der von ihnen gespeicherten Daten geeignet sind. Die Widgets einer gut gestalteten Benutzeroberfläche werden ausgewählt, um die Aktionen zu unterstützen, die zum Erreichen der Ziele der Benutzer erforderlich sind. Ein Model–View–Controller ermöglicht flexible Strukturen, bei denen die Oberfläche unabhängig und indirekt mit Anwendungsfunktionen verknüpft ist, sodass die GUI einfach angepasst werden kann. Dies ermöglicht es Benutzern, nach Belieben eine andere Skin auszuwählen oder zu entwerfen , und erleichtert dem Designer die Arbeit, die Benutzeroberfläche an die sich ändernden Benutzeranforderungen anzupassen. Gutes User Interface Design bezieht sich mehr auf die Benutzer und weniger auf die Systemarchitektur. Große Widgets wie Fenster stellen normalerweise einen Rahmen oder Container für den Hauptpräsentationsinhalt wie eine Webseite, eine E-Mail-Nachricht oder eine Zeichnung bereit. Kleinere fungieren normalerweise als Benutzereingabewerkzeug.

Eine GUI kann als anwendungsspezifische grafische Benutzeroberfläche für die Anforderungen eines vertikalen Marktes konzipiert sein. Beispiele sind Geldautomaten (ATM), Point-of-Sale (POS)-Touchscreens in Restaurants, Selbstbedienungskassen in einem Einzelhandelsgeschäft, Selbstticket- und Check-in-Tickets für Fluggesellschaften, Informationskioske in einem öffentlichen Raum wie einem Bahnhof oder ein Museum und Monitore oder Kontrollbildschirme in einer eingebetteten industriellen Anwendung, die ein Echtzeit-Betriebssystem (RTOS) verwenden.

Mobiltelefone und tragbare Spielsysteme verwenden auch anwendungsspezifische Touchscreen-GUIs. Neuere Automobile verwenden GUIs in ihren Navigationssystemen und Multimedia-Centern oder Navigations-Multimedia-Center-Kombinationen.

Beispiele

Komponenten

Schichten einer GUI basierend auf einem Fenstersystem

Eine GUI verwendet eine Kombination von Technologien und Geräten, um eine Plattform bereitzustellen, mit der Benutzer interagieren können, um Informationen zu sammeln und zu produzieren.

Eine Reihe von Elementen, die einer visuellen Sprache entsprechen, hat sich entwickelt, um in Computern gespeicherte Informationen darzustellen. Dies erleichtert es Personen mit geringen Computerkenntnissen, mit Computersoftware zu arbeiten und diese zu verwenden. Die häufigste Kombination solcher Elemente in GUIs ist das Paradigma von Fenstern, Symbolen, Menüs, Zeigern ( WIMP ), insbesondere bei Personalcomputern .

Der WIMP-Interaktionsstil verwendet ein virtuelles Eingabegerät , um die Position der Schnittstelle eines Zeigegeräts darzustellen , meistens eine Maus , und präsentiert Informationen, die in Fenstern organisiert und mit Symbolen dargestellt werden . Verfügbare Befehle werden in Menüs zusammengestellt und Aktionen werden durch Gesten mit dem Zeigegerät ausgeführt. Ein Fenstermanager erleichtert die Interaktionen zwischen Fenstern, Anwendungen und dem Fenstersystem . Das Fenstersystem handhabt Hardwaregeräte wie etwa Zeigegeräte, Grafikhardware und die Positionierung des Zeigers.

In Personalcomputern werden all diese Elemente durch eine Desktop-Metapher modelliert , um eine Simulation zu erzeugen, die als Desktop-Umgebung bezeichnet wird, in der die Anzeige einen Desktop darstellt, auf dem Dokumente und Dokumentenordner platziert werden können. Fenstermanager und andere Software werden kombiniert, um die Desktop-Umgebung mit unterschiedlichem Realismus zu simulieren.

Einträge können in einer Liste erscheinen, um Platz für Text und Details zu schaffen, oder in einem Raster für Kompaktheit und größere Symbole mit wenig Platz darunter für Text. Dazwischen gibt es Variationen, wie beispielsweise eine Liste mit mehreren Spalten von Elementen und ein Gitter von Elementen mit Textzeilen, die sich seitlich vom Symbol erstrecken.

Mehrzeilige und mehrspaltige Layouts, die im Web häufig zu finden sind, sind "Regal" und "Wasserfall". Ersteres findet sich in Bildsuchmaschinen , wo Bilder mit fester Höhe, aber variabler Länge erscheinen, und wird normalerweise mit der CSS-Eigenschaft und dem Parameter implementiert display: inline-block;. Ein Wasserfall-Layout auf Imgur und Tweetdeck mit fester Breite, aber variabler Höhe pro Element wird normalerweise durch die Angabe von implementiert column-width:.

Post-WIMP-Schnittstelle

Kleinere mobile App-Geräte wie Personal Digital Assistants (PDAs) und Smartphones verwenden aufgrund von Platzbeschränkungen und verfügbaren Eingabegeräten typischerweise die WIMP-Elemente mit unterschiedlichen vereinheitlichenden Metaphern. Anwendungen, für die WIMP nicht gut geeignet ist, können neuere Interaktionstechniken verwenden , die zusammenfassend als Post-WIMP- Benutzerschnittstellen bezeichnet werden.

Ab 2011 verwenden einige Touchscreen-basierte Betriebssysteme wie Apples iOS ( iPhone ) und Android die Klasse von GUIs namens Post-WIMP. Diese unterstützen Interaktionsstile, bei denen mehr als ein Finger in Kontakt mit einem Display ist, was Aktionen wie Kneifen und Drehen ermöglicht, die von einem Zeiger und einer Maus nicht unterstützt werden.

Interaktion

Human Interface Devices , für die effiziente Interaktion mit einer GUI umfassen eine Computertastatur , die insbesondere zusammen mit Tastaturkürzeln verwendet wird , Zeigegeräte für die Cursor- (oder vielmehr Zeiger- ) Steuerung: Maus , Pointing Stick , Touchpad , Trackball , Joystick , virtuelle Tastaturen und Head-up-Displays (transluzente Informationsgeräte auf Augenhöhe).

Es gibt auch Aktionen, die von Programmen ausgeführt werden, die sich auf die GUI auswirken. Beispielsweise gibt es Komponenten wie inotify oder D-Bus , um die Kommunikation zwischen Computerprogrammen zu erleichtern.

Geschichte

Frühe Bemühungen

1963 entwickelte Ivan Sutherland Sketchpad , das als erstes grafisches computergestütztes Designprogramm weit verbreitet war . Es verwendet einen Lichtstift , um Objekte in technischen Zeichnungen in Echtzeit mit koordinierten Grafiken zu erstellen und zu bearbeiten. In den späten 1960er Jahren entwickelten Forscher des Stanford Research Institute unter der Leitung von Douglas Engelbart das Online-System (NLS), das textbasierte Hyperlinks verwendet, die mit einem damals neuen Gerät manipuliert wurden: der Maus . (Eine Demonstration von NLS aus dem Jahr 1968 wurde als " The Mother of All Demos " bekannt.) In den 1970er Jahren wurden Engelbarts Ideen von Forschern bei Xerox PARC und insbesondere Alan Kay , die über textbasierte Hyperlinks hinausgingen, weiter verfeinert und auf Grafiken ausgeweitet eine GUI als Hauptschnittstelle für die Programmiersprache Smalltalk , die auf dem 1973 veröffentlichten Xerox Alto- Computer lief. Die meisten modernen Universal-GUIs sind von diesem System abgeleitet.

Die Workstation Xerox Star 8010 führte die erste kommerzielle GUI ein.

Die Benutzeroberfläche von Xerox PARC bestand aus grafischen Elementen wie Fenstern , Menüs , Optionsfeldern und Kontrollkästchen . Das Konzept der Ikonen wurde später von David Canfield Smith eingeführt , der unter der Leitung von Kay eine Dissertation zu diesem Thema verfasst hatte. Die PARC-Benutzeroberfläche verwendet ein Zeigegerät zusammen mit einer Tastatur. Diese Aspekte können durch die Verwendung des alternativen Begriffs und Akronyms für Fenster, Symbole, Menüs, Zeigegerät ( WIMP ) hervorgehoben werden. Diese Bemühungen gipfelten im 1973 Xerox Alto , dem ersten Computer mit einer GUI, obwohl das System nie eine kommerzielle Produktion erreichte.

Der erste kommerziell erhältliche Computer mit einer GUI war 1979 die PERQ-Workstation , hergestellt von Three Rivers Computer Corporation. Sein Design wurde stark von der Arbeit bei Xerox PARC beeinflusst. 1981 brachte Xerox den Alto schließlich in Form eines neuen und verbesserten Systems auf den Markt – dem Xerox 8010 Informationssystem – besser bekannt als Xerox Star . Diese frühen Systeme spornten viele andere GUI-Bemühungen an, darunter Lisp-Maschinen von Symbolics und anderen Herstellern, die Apple Lisa (die das Konzept der Menüleisten- und Fenstersteuerungen vorstellte ) im Jahr 1983, den Apple Macintosh 128K im Jahr 1984 und den Atari ST mit Digital Research 's GEM und Commodore Amiga im Jahr 1985. Visi On wurde 1983 für die IBM PC-kompatiblen Computer veröffentlicht, war jedoch aufgrund seiner hohen Hardwareanforderungen nie beliebt. Dennoch war es ein entscheidender Einfluss auf die zeitgemäße Entwicklung von Microsoft Windows .

Apple, Digital Research, IBM und Microsoft nutzten viele Ideen von Xerox zur Entwicklung von Produkten, und die Common User Access- Spezifikationen von IBM bildeten die Grundlage für die Benutzeroberflächen von Microsoft Windows, IBM OS/2 Presentation Manager und dem Unix Motif Toolkit und Window Manager . Diese Ideen wurden entwickelt, um die Schnittstelle zu schaffen, die in aktuellen Versionen von Microsoft Windows und in verschiedenen Desktop-Umgebungen für Unix-ähnliche Betriebssysteme wie macOS und Linux zu finden ist . Daher haben die meisten aktuellen GUIs weitgehend gemeinsame Idiome.

Macintosh 128K , der erste Macintosh (1984)

Popularisierung

GUIs waren in den frühen 1980er Jahren ein heißes Thema. Die Apple Lisa wurde 1983 veröffentlicht und es gab verschiedene Fenstersysteme für DOS- Betriebssysteme (einschließlich PC GEM und PC/GEOS ). Individuelle Anwendungen für viele Plattformen präsentierten eigene GUI-Varianten. Trotz der Vorteile der GUIs stellten viele Rezensenten den Wert des gesamten Konzepts in Frage und nannten Hardwaregrenzen und Probleme beim Auffinden kompatibler Software.

Im Jahr 1984 veröffentlichte Apple einen Fernsehwerbespot, der den Apple Macintosh während der Übertragung des Super Bowl XVIII von CBS vorstellte , mit Anspielungen auf George Orwells bekannten Roman Nineteen Eighty-Four . Das Ziel des Werbespots war es, die Leute zum Nachdenken über Computer anzuregen, die benutzerfreundliche Oberfläche als Personal Computer zu identifizieren, der von früheren geschäftsorientierten Systemen abwich und zu einer charakteristischen Repräsentation von Apple-Produkten wurde.

Windows 95 , begleitet von einer umfangreichen Marketingkampagne, war bei seiner Einführung ein großer Erfolg auf dem Markt und wurde in Kürze zum beliebtesten Desktop-Betriebssystem.

Im Jahr 2007, mit dem iPhone und später im Jahr 2010 mit der Einführung des iPads , machte Apple den Post-WIMP-Stil der Interaktion für Multi-Touchscreens populär , und diese Geräte galten als Meilensteine ​​in der Entwicklung mobiler Geräte .

Die den meisten Menschen seit Mitte der 2010er Jahre vertrauten GUIs sind Microsoft Windows , macOS und die X Window System- Schnittstellen für Desktop- und Laptop-Computer sowie Android , Apples iOS , Symbian , BlackBerry OS , Windows Phone / Windows 10 Mobile , Tizen , WebOS und Firefox OS für Handheld- Geräte ( Smartphones ).

Vergleich zu anderen Schnittstellen

Befehlszeilenschnittstellen

Ein modernes CLI

Da die in Befehlszeilenschnittstellen verfügbaren Befehle viele sein können, können komplexe Operationen mit einer kurzen Abfolge von Wörtern und Symbolen ausgeführt werden. Benutzerdefinierte Funktionen können verwendet werden, um den Zugriff auf häufige Aktionen zu erleichtern. Befehlszeilenschnittstellen sind einfacher , da sie nur Informationen abrufen, die für eine Aufgabe erforderlich sind; zum Beispiel keine Vorschau-Thumbnails oder grafische Darstellung von Webseiten. Dies ermöglicht eine höhere Effizienz und Produktivität, sobald viele Befehle erlernt sind. Das Erreichen dieses Levels dauert jedoch einige Zeit, da die Befehlswörter möglicherweise nicht leicht auffindbar oder mnemonisch sind . Außerdem kann die Verwendung der Befehlszeile langsam und fehleranfällig werden, wenn Benutzer lange Befehle mit vielen Parametern oder mehreren verschiedenen Dateinamen gleichzeitig eingeben müssen. Allerdings Fenstern, Icons, Menüs, Zeiger ( WIMP ) Schnittstellen vorhanden Benutzer mit vielen Widgets , die darstellen , und können einige der System verfügbaren Befehle auslösen.

GUIs können ziemlich schwer gemacht werden, wenn Dialoge tief in einem System vergraben sind oder während des Redesigns an andere Stellen verschoben werden. Außerdem sind Symbole und Dialogfelder für Benutzer normalerweise schwieriger zu skripten.

WIMPs verwenden häufig Modi , da die Bedeutung aller Tasten und Klicks auf bestimmte Positionen auf dem Bildschirm ständig neu definiert wird. Befehlszeilenschnittstellen verwenden Modi nur in begrenzter Form, beispielsweise für aktuelle Verzeichnis- und Umgebungsvariablen .

Die meisten modernen Betriebssysteme bieten sowohl eine GUI als auch eine CLI-Ebene, obwohl den GUIs normalerweise mehr Aufmerksamkeit geschenkt wird. Die GUI ist normalerweise WIMP-basiert, obwohl gelegentlich andere Metaphern auftauchen, wie sie beispielsweise in Microsoft Bob , 3dwm oder File System Visualizer verwendet werden .

GUI-Wrapper

Wrapper für grafische Benutzeroberflächen (GUI) finden einen Weg um die Befehlszeilenschnittstellenversionen (CLI) von (typischerweise) Linux- und Unix-ähnlichen Softwareanwendungen und deren textbasierten Benutzeroberflächen oder eingegebenen Befehlsbezeichnungen zu umgehen. Während Befehlszeilen- oder textbasierte Anwendungen Benutzern ermöglichen, ein Programm nicht interaktiv auszuführen, vermeiden GUI-Wrapper darüber die steile Lernkurve der Befehlszeile, die die Eingabe von Befehlen auf der Tastatur erfordert . Durch das Starten eines GUI-Wrappers können Benutzer intuitiv mit seinen Arbeitsparametern interagieren , diese starten, stoppen und ändern, beispielsweise durch grafische Symbole und visuelle Indikatoren einer Desktop-Umgebung . Anwendungen können auch beide Schnittstellen bereitstellen, und wenn dies der Fall ist, ist die GUI normalerweise ein WIMP-Wrapper um die Befehlszeilenversion. Dies tritt besonders häufig bei Anwendungen auf, die für Unix-ähnliche Betriebssysteme entwickelt wurden. Letzteres wurde früher zuerst implementiert, da sich die Entwickler so ausschließlich auf die Funktionalität ihres Produkts konzentrieren konnten, ohne sich um Oberflächendetails wie das Designen von Symbolen und das Platzieren von Schaltflächen zu kümmern. Das Entwerfen von Programmen auf diese Weise ermöglicht es Benutzern auch, das Programm in einem Shell-Skript auszuführen .

Dreidimensionale grafische Benutzeroberflächen (3D-GUIs)

Es wurden mehrere Versuche unternommen, eine dreidimensionale Mehrbenutzerumgebung oder eine 3D-GUI zu erstellen, darunter Suns Project Looking Glass , Metisse , das ähnlich wie Project Looking Glass, BumpTop , wo Benutzer Dokumente und Fenster mit realistischen Bewegungen und Physik manipulieren können wenn es sich um physische Dokumente handelte, und das Croquet-Projekt , das zu den Bemühungen von Open Cobalt und Open Croquet übergegangen ist.

Die Zooming User Interface (ZUI) ist eine verwandte Technologie, die verspricht, die Darstellungsvorteile von 3D-Umgebungen ohne deren Usability-Nachteile wie Orientierungsprobleme und versteckte Objekte zu liefern. Es ist eine logische Weiterentwicklung der GUI, die dreidimensionale Bewegungen mit zweidimensionalen oder 2,5D- Vektorobjekten vermischt . 2006 führte Hillcrest Labs die erste Zoom-Benutzeroberfläche für das Fernsehen ein.

Für typische Computerdisplays ist dreidimensional eine falsche Bezeichnung – ihre Displays sind zweidimensional, zum Beispiel charakterisierte Metisse sich selbst als „ 2,5-dimensionale “ Benutzeroberfläche. Semantisch verwenden die meisten grafischen Benutzeroberflächen jedoch drei Dimensionen. Mit Höhe und Breite bieten sie eine dritte Dimension des Übereinanderlegens oder Stapelns von Siebelementen. Dies kann durch einen illusionären Transparenzeffekt visuell auf dem Bildschirm dargestellt werden, was den Vorteil bietet, dass Informationen in Hintergrundfenstern noch gelesen werden können, wenn nicht mit ihnen interagiert wird. Oder die Umgebung kann die Hintergrundinformationen einfach ausblenden und die Unterscheidung möglicherweise durch einen Schlagschatteneffekt darüber sichtbar machen.

Einige Umgebungen verwenden die Methoden der 3D-Grafik , um virtuelle dreidimensionale Benutzeroberflächenobjekte auf den Bildschirm zu projizieren. Diese werden oft in Science-Fiction-Filmen verwendet (Beispiele siehe unten). Mit zunehmender Rechenleistung von Computergrafikhardware wird dies weniger Hindernis für eine reibungslose Benutzererfahrung.

Dreidimensionale Grafiken werden derzeit hauptsächlich in Computerspielen, Kunst und computergestütztem Design (CAD) verwendet. Eine dreidimensionale Computerumgebung kann auch bei anderen Anwendungen nützlich sein, wie Molekulargrafik , Flugzeugdesign und Phasengleichgewichtsberechnungen/Design von Einheitsoperationen und chemischen Prozessen .

Technologien

Die Verwendung von dreidimensionalen Grafiken wird in Mainstream-Betriebssystemen immer häufiger verwendet, von der Schaffung attraktiver Schnittstellen, die als Augenschmaus bezeichnet werden , bis hin zu funktionalen Zwecken, die nur unter Verwendung von drei Dimensionen möglich sind. Der Benutzerwechsel wird beispielsweise durch das Drehen eines Würfels dargestellt, dessen Gesichter der Arbeitsbereich jedes Benutzers sind, und die Fensterverwaltung wird über einen Rolodex- ähnlichen Flip-Mechanismus in Windows Vista dargestellt (siehe Windows Flip 3D ). In beiden Fällen wandelt das Betriebssystem Fenster im laufenden Betrieb um, während der Inhalt dieser Fenster weiterhin aktualisiert wird.

Schnittstellen für das X - Window - System haben auch erweiterte dreidimensionales Benutzeroberflächen durch implementiert Composition-Manager wie Beryl , Compiz und KWin mit dem AIGLX oder XGL - Architekturen, die die Verwendung von OpenGL zu animieren Benutzer - Interaktionen mit dem Desktop.

In Science-Fiction

Dreidimensionale GUIs tauchten in Science-Fiction- Literatur und -Filmen auf, bevor sie technisch machbar oder allgemein verwendet wurden. Zum Beispiel; der amerikanische Film Jurassic Park aus dem Jahr 1993 enthält den dreidimensionalen Dateimanager File System Navigator von Silicon Graphics , einen realen Dateimanager für Unix- Betriebssysteme. Der Film Minority Report zeigt Szenen von Polizisten, die spezielle 3D-Datensysteme verwenden. In Prosa, dreidimensionale Benutzeroberflächen wurden als immersible Umgebungen wie porträtiert William Gibson ‚s Cyberspace oder Neal Stephenson ‘ s Metaverse . Viele futuristische Vorstellungen von Benutzerschnittstellen verlassen sich stark auf den Stil der objektorientierten Benutzerschnittstelle (OOUI) und insbesondere den Stil der objektorientierten grafischen Benutzerschnittstelle (OOGUI).

Siehe auch

Anmerkungen

  1. ^ "UI" selbst istvor in der Regel ausgesprochen / ˌ j U / YOU - EYE .

Verweise

Externe Links