Graphical user interface

From Wikipedia, the free encyclopedia.

(Redirected from GUI)
Jump to: navigation, search

A graphical user interface (or GUI, sometimes pronounced "gooey") is a method of interacting with a computer through a metaphor of direct manipulation of graphical images and widgets in addition to text.

GUIs display visual elements such as icons, windows, and other gadgets. The precursor to GUIs was invented by researchers at the Stanford Research Institute (led by Doug Engelbart) with the development and use of text-based hyperlinks manipulated with a mouse for the On-Line System. The concept of hyperlinks was further refined and extended to graphics by researchers at Xerox PARC, who went beyond text-based hyperlinks and used GUIs as the primary interface for the Xerox Alto computer. Most modern general-purpose GUIs are derived from this system. For this reason some people call this class of interface a PARC User Interface (PUI) (note that PUI is also an acronym for perceptual user interface). The PUI consists of graphical widgets (often provided by widget toolkit libraries) such as windows, menus, radio buttons, check boxes, and icons, and employs a pointing device (such as a mouse, trackball, or touchscreen) in addition to a keyboard. For this reason, many supporters of command line interface operating systems once referred to PUIs as WIMPs, which stood for Windows, Icons, Menus, Pointer. The term GUI is used to describe the user interface of most modern operating systems, although occasionally other metaphors surface, such as Microsoft Bob, 3dwm or (partially) FSV.

Examples of systems that support GUIs are Mac OS, Microsoft Windows, NEXTSTEP and the X Window System. The latter is extended with toolkits such as Motif (CDE), Qt (KDE) and GTK+ (GNOME).

An example of the graphical user interface in Windows XP
Enlarge
An example of the graphical user interface in Windows XP
An example of the graphical user interface in Apple's Mac OS X
Enlarge
An example of the graphical user interface in Apple's Mac OS X
An example of one of the many X Window System's graphical user interfaces available for Unix-like systems
Enlarge
An example of one of the many X Window System's graphical user interfaces available for Unix-like systems

Contents

Types of GUIs

GUIs that are not PUIs are most notably found in computer games, and advanced GUIs based on virtual reality are now frequently found in research. Many research groups in North America and Europe are currently working on the Zooming User Interface or ZUI, which is a logical advancement on the GUI, blending some 3D movement with 2D or "2 and a half D" vectorial objects.

Some GUIs are designed for the rigorous requirements of vertical markets. These are known as "application specific GUIs." One example of such an application specific GUI is the now familiar touchscreen point of sale software found in restaurants worldwide and being introduced into self-service retail checkouts. First pioneered by Gene Mosher on the Atari ST computer in 1986, the application specific touchscreen GUI has spearheaded a worldwide revolution in the use of computers throughout the food & beverage industry and in general retail.

Other examples of application specific touchscreen GUIs include the most recent automatic teller machines, airline self-ticketing, information kiosks and the monitor/control screens in embedded industrial applications which employ a real time operating system (RTOS). The latest cell phones and handheld game systems also employ application specific touchscreen GUIs.


GUI vs. CLI

GUI CLI
some commands are listed at the top of the screen the user has to voluntarily pull up a command list
commands are located in a hierachy CLI commands are abbreviated following a non computer language
Quasi modeless: Mouse mode and Keyboard mode. mode is set by current directory and the path variables
maps lists, 2D arrays (spreadsheets), flow charts, mind maps and text files 1:1 onto the screen. Direct manipulation interface users know how things work. "behind the scenes"
type with one hand, use one hand for mouse type with both hands
undo is possible redo is possible. see scripts.
mouse cannot easily be used with motion diablity keyboard is not used blindly by many peoply
GUIs need good vision but also has sound effects CLI can be used via a phone (audio only interface)
utilizes all the power of powerful hardware low hardware requirements (cpu, ram , network terminals)
tab completion is used in texts and forms tab completion is used also for commands
all programs use same menu structure and shortcuts interoperability of greater sets of commands
dictate the user workflow with popup windows, dialogs, 'wizards', and 'assistants' dictate the user workflow with dialogs
users must start over at the beginning every time, as GUI scripting scipting can thereafter be carried out with no further analysis and design effort
relations and program flow and data flow are drawn with the help of drag and drop scipts are written
the windows start menu can hold link files aliases can be defined
repeating the same command is a sign of a missing script repeating the same command is a sign of a missing script
the computer dynamically orders commands after amount of use the user dynamically orders aliases after amount of use
in a multitasking environtment the focus is randomly jumping between different tasks (on slow maschines) in a multitasking environtment the user switches manually between the tasks
differen views on the same data source and compiled data
the clippboard has to be used to paste the working directory into the apps maintain the concept of a working directory
sort by clicking on header of table sort by sort command
print: right click and print print command
object linking and embedding pipe
icons are hardly generated by the user alpha numeric names are easily generated by the user
selection, right click, print print *.*
a programmer has to create a menue resource a programmer has to write a parser
used for image editing used for network administration
picking an object then commanding the system what to do to it typing a command and then on what object to apply

Outlook

Also, academic and research institutions often work on prototypes of future user interfaces that place an equal or greater emphasis on the tactile elements of the interface. The "direct manipulation interface" term is usually not presented as an acronym.

See also

External links

Personal tools