Graphical user interface: Difference between revisions
m Reverted edits by 205.213.195.20 (talk) to last version by GoingBatty |
|||
Line 19: | Line 19: | ||
The PARC user interface consisted of graphical elements such as [[window (computing)|window]]s, [[menu (computing)|menu]]s, [[radio button (computing)|radio button]]s, [[check box]]es and [[icon (computing)|icon]]s. The PARC user interface employs a [[pointing device]] in addition to a keyboard. These aspects can be emphasized by using the alternative acronym [[WIMP (computing)|WIMP]], which stands for ''windows'', ''icons'', ''menus'' and ''[[pointing device]]''. |
The PARC user interface consisted of graphical elements such as [[window (computing)|window]]s, [[menu (computing)|menu]]s, [[radio button (computing)|radio button]]s, [[check box]]es and [[icon (computing)|icon]]s. The PARC user interface employs a [[pointing device]] in addition to a keyboard. These aspects can be emphasized by using the alternative acronym [[WIMP (computing)|WIMP]], which stands for ''windows'', ''icons'', ''menus'' and ''[[pointing device]]''. |
||
=== Evolution === |
=== Evolution === hi every body lolz |
||
[[Image:Xerox 8010 compound document.jpg|thumb|right|The Xerox Star Workstation introduced the first commercial GUI operating system as shown above.]] |
[[Image:Xerox 8010 compound document.jpg|thumb|right|The Xerox Star Workstation introduced the first commercial GUI operating system as shown above.]] |
||
Following PARC the first GUI-centric computer operating model was the [[Xerox Star|Xerox 8010 Star Information System]] in 1981,<ref>[http://www.catb.org/~esr/writings/taouu/html/ch02s05.html The first GUIs<!--Bot-generated title-->]</ref> followed by the [[Apple Lisa]] (which presented the concept of menu bar as well as window controls) in 1983, the Apple [[Macintosh 128K]] in 1984, and the [[Atari ST]] and Commodore [[Amiga]] in 1985. |
Following PARC the first GUI-centric computer operating model was the [[Xerox Star|Xerox 8010 Star Information System]] in 1981,<ref>[http://www.catb.org/~esr/writings/taouu/html/ch02s05.html The first GUIs<!--Bot-generated title-->]</ref> followed by the [[Apple Lisa]] (which presented the concept of menu bar as well as window controls) in 1983, the Apple [[Macintosh 128K]] in 1984, and the [[Atari ST]] and Commodore [[Amiga]] in 1985. |
Revision as of 19:03, 3 April 2012
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
No issues specified. Please specify issues, or remove this template. |
In computing, a graphical user interface (GUI, commonly pronounced gooey[1]) is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and office equipment. A GUI represents the information and actions available to a user through graphical icons and visual indicators such as secondary notation, as opposed to text-based interfaces, typed command labels or text navigation. The actions are usually performed through direct manipulation of the graphical elements.[2]
The term GUI is restricted to the scope of two-dimensional display screens with display resolutions able to describe generic information, in the tradition of the computer science research at the PARC (Palo Alto Research Center). The term GUI is rarely applied to other high-resolution types of interfaces that are non-generic, such as video games (where HUD[3] is preferred), or not restricted to flat screens, like volumetric displays.[4]
History
Precursors
A precursor to GUIs was invented by researchers at the Stanford Research Institute, led by Douglas Engelbart. They developed the 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 a GUI as the primary interface for the Xerox Alto computer. Most modern general-purpose GUIs are derived from this system.
Ivan Sutherland developed a pointer-based system called the Sketchpad in 1963. It used a light-pen to guide the creation and manipulation of objects in engineering drawings.
PARC user interface
The PARC user interface consisted of graphical elements such as windows, menus, radio buttons, check boxes and icons. The PARC user interface employs a pointing device in addition to a keyboard. These aspects can be emphasized by using the alternative acronym WIMP, which stands for windows, icons, menus and pointing device.
=== Evolution === hi every body lolz
Following PARC the first GUI-centric computer operating model was the Xerox 8010 Star Information System in 1981,[5] followed by the Apple Lisa (which presented the concept of menu bar as well as window controls) in 1983, the Apple Macintosh 128K in 1984, and the Atari ST and Commodore Amiga in 1985.
The early GUI commands, until the advent of the IBM's Common User Access, [6] used different command sequences for different programs. A command like the F3 function key activated help in WordPerfect, but exited an IBM program. The menus were accessed by different keys (control in WordStar, Alt or F10 in Microsoft programs, "/" in Lotus 1-2-3, F9 in Norton Commander to name a few common ones).
To this end, the early software came with keyboard overlays. These are plastic or paper masks which sit over the empty space between the keys, providing the user with the named application's use of various keys. Even today, different keystrokes exist with radically different calls. For example, the Control-Alt-Delete interface is intercepted in Windows to invoke a task menu. In Unix PC-systems, this usually invokes an automatic shutdown.
The GUIs familiar to most people today[timeframe?] are Microsoft Windows, Mac OS X, and X Window System interfaces for desktop and laptop computers, and Symbian, BlackBerry OS, Android and Apple's iOS for handheld ("smartphone") devices.
Apple, IBM and Microsoft used many of Xerox's ideas to develop products, and IBM's Common User Access specifications formed the basis of the user interface found in Microsoft Windows, IBM OS/2 Presentation Manager, and the Unix Motif toolkit and window manager. These ideas evolved to create the interface found in current versions of Microsoft Windows, as well as in Mac OS X and various desktop environments for Unix-like operating systems, such as Linux. Thus most current GUIs have largely common idioms.
Components
A GUI uses a combination of technologies and devices to provide a platform that the user can interact with, for the tasks of gathering and producing information.
A series of elements conforming a visual language have evolved to represent information stored in computers. This makes it easier for people with few computer skills to work with and use computer software. The most common combination of such elements in GUIs is the WIMP ("window, icon, menu, pointing device") paradigm, especially in personal computers.
The WIMP style of interaction uses a physical input device to control the position of a pointer and presents information organized in windows and represented with icons. Available commands are compiled together in menus, and actions are performed making gestures with the pointing device. A window manager facilitates the interactions between windows, applications, and the windowing system. The windowing system handles hardware devices such as pointing devices and graphics hardware, as well as the positioning of the pointer.
In personal computers all these elements are modeled through a desktop metaphor, to produce a simulation called a desktop environment in which the display represents a desktop, upon which documents and folders of documents can be placed. Window managers and other software combine to simulate the desktop environment with varying degrees of realism.
Post-WIMP interfaces
Smaller mobile devices such as PDAs and smartphones typically use the WIMP elements with different unifying metaphors, due to constraints in space and available input devices. Applications for which WIMP is not well suited may use newer interaction techniques, collectively named as post-WIMP user interfaces.[7]
As of 2011, some touch-screen-based operating systems such as Apple's iOS (iPhone) and Android use the class of GUIs named post-WIMP. These support styles of interaction using more than one finger in contact with a display, which allows actions such as pinching and rotating, which are unsupported by one pointer and mouse.[8]
Post-WIMP includes 3D compositing window managers such as Compiz, Desktop Window Manager, and LG3D.[citation needed] Some post-WIMP interfaces may be better suited for applications which model immersive 3D environments, such as Google Earth.[9]
User interface and interaction design
Designing the visual composition and temporal behavior of GUI is an important part of software application programming in the area of human-computer interaction. Its goal is to enhance the efficiency and ease of use for the underlying logical design of a stored program, a design discipline known as usability. Methods of user-centered design are used to ensure that the visual language introduced in the design is well tailored to the tasks.
Typically, the user interacts with information by manipulating visual widgets that allow for interactions appropriate to the kind of data they hold. The widgets of a well-designed interface are selected to support the actions necessary to achieve the goals of the user. A model-view-controller allows for a flexible structure in which the interface is independent from and indirectly linked to application functionality, so the GUI can be easily customized. This allows the user to select or design a different skin at will, and eases the designer's work to change the interface as the user needs evolve. Good user interface design relates to the user, not the system architecture.
Large widgets, such as windows, usually provide a frame or container for the main presentation content such as a web page, email message or drawing. Smaller ones usually act as a user-input tool.
A GUI may be designed for the requirements of a vertical market as application-specific graphical user interfaces. Examples of application-specific GUIs are:
- Automated teller machines (ATM)
- Point-Of-Sale touchscreens at restaurants [10]
- Self-service checkouts used in a retail store
- Airline self-ticketing and check-in
- Information kiosks in a public space, like a train station or a museum
- Monitors or control screens in an embedded industrial application which employ a real time operating system (RTOS).
The latest cell phones and handheld game systems also employ application specific touchscreen GUIs. Newer automobiles use GUIs in their navigation systems and touch screen multimedia centers.
Comparison to other interfaces
Command-line interfaces
GUIs were introduced in reaction to the perceived steep learning curve of command-line interfaces (CLI),[11][12][12] which require commands to be typed on the keyboard. Since the commands available in command line interfaces can be numerous, complicated operations can be completed using a short sequence of words and symbols. This allows for greater efficiency and productivity once many commands are learned,[11][12][12] but reaching this level takes some time because the command words are not easily discoverable and not mnemonic. WIMPs ("window, icon, menu, pointing device"), on the other hand, present the user with numerous widgets that represent and can trigger some of the system's available commands.
On the other hand, GUIs can be made quite hard by burying dialogs deep in the system, or moving dialogs from place to place. Also, dialog boxes are considerbly harder for the user to script.
WIMPs extensively use modes as the meaning of all keys and clicks on specific positions on the screen are redefined all the time. Command line interfaces use modes only in limited forms, such as the current directory and environment variables.
Most modern operating systems provide both a GUI and some level of a CLI, although the GUIs usually receive more attention. The GUI is usually WIMP-based, although occasionally other metaphors surface, such as those used in Microsoft Bob, 3dwm or File System Visualizer (FSV).
Applications may also provide both interfaces, and when they do the GUI is usually a WIMP wrapper around the command-line version. This is especially common with applications designed for Unix-like operating systems. The latter used to be implemented first because it allowed the developers to focus exclusively on their product's functionality without bothering about interface details such as designing icons and placing buttons. Designing programs this way also allows users to run the program non-interactively, such as in a shell script.
Three-dimensional user interfaces
For typical computer displays, three-dimensional is a misnomer—their displays are two-dimensional. Semantically, however, most graphical user interfaces use three dimensions - in addition to height and width, they offer a third dimension of layering or stacking screen elements over one another. This may be represented visually on screen through an illusionary transparent effect, which offers the advantage that information in background windows may still be read, if not interacted with. Or the environment may simply hide the background information, possibly making the distinction apparent by drawing a drop shadow effect over it.
Some environments use the methods of 3D graphics to project virtual three dimensional user interface objects onto the screen. As the processing power of computer graphics hardware increases, this becomes less of an obstacle to a smooth user experience.
Motivation
Three-dimensional GUIs are quite common in science fiction literature and movies, such as in Jurassic Park, which features Silicon Graphics' three-dimensional file manager, "File system navigator", an actual file manager that never got much widespread use as the user interface for a Unix computer. In fiction, three-dimensional user interfaces are often immersible environments like William Gibson's Cyberspace or Neal Stephenson's Metaverse.
Three-dimensional graphics are currently mostly used in computer games, art and computer-aided design (CAD). There have been several attempts at making three-dimensional desktop environments like Sun's Project Looking Glass or SphereXP from Sphere Inc. A three-dimensional computing environment could possibly be used for collaborative work. For example, scientists could study three-dimensional models of molecules in a virtual reality environment, or engineers could work on assembling a three-dimensional model of an airplane. This is a goal of the Croquet project and Project Looking Glass.[13]
Technologies
The use of three-dimensional graphics has become increasingly common in mainstream operating systems, from creating attractive interfaces—eye candy— to functional purposes only possible using three dimensions. For example, user switching is represented by rotating a cube whose faces are each user's workspace, and window management is represented via a Rolodex-style flipping mechanism in Windows Vista (see Windows Flip 3D). In both cases, the operating system transforms windows on-the-fly while continuing to update the content of those windows.
Interfaces for the X Window System have also implemented advanced three-dimensional user interfaces through compositing window managers such as Beryl, Compiz and KWin using the AIGLX or XGL architectures, allowing for the usage of OpenGL to animate the user's interactions with the desktop.
Another branch in the three-dimensional desktop environment is the three-dimensional GUIs that take the desktop metaphor a step further, like the BumpTop, where a user can manipulate documents and windows as if they were "real world" documents, with realistic movement and physics.
The Zooming User Interface (ZUI) is a related technology that promises to deliver the representation benefits of 3D environments without their usability drawbacks of orientation problems and hidden objects. It is a logical advancement on the GUI, blending some three-dimensional movement with two-dimensional or "2.5D" vector objects. In 2006, Hillcrest Labs introduced the first zooming user interface for television. [14]
See also
{{{inline}}}
- Apple v. Microsoft
- Computer icon
- Distinguishable interfaces
- Ergonomics
- General graphics interface
- Look and feel
- Natural user interface (NUI)
- Ncurses
- Object-oriented user interface
- Organic User Interface
- Rich Internet applications
- Skin
- Text entry interface
- Text user interface (TUI)
- User interface engineering
- Vector-Based GUI
- Worrell
References
- ^ "Definition of GUI at Dictionary.com". Retrieved January 2010.
{{cite web}}
: Check date values in:|accessdate=
(help) - ^ "window manager Definition". PC Magazine. Ziff Davis Publishing Holdings Inc. Retrieved 12 November 2008.
- ^ Greg Wilson (2006). "Off With Their HUDs!: Rethinking the Heads-Up Display in Console Game Design". Gamasutra. Retrieved February 14, 2006.
- ^ "GUI definition". Linux Information Project. October 1, 2004. Retrieved 12 November 2008.
- ^ The first GUIs
- ^ IBM, Systems Application Architecture: Common User Access: Basic Interface Design Guide, Document SC26-4583-00 [1], 1992.
- ^ IEEE.org.
- ^ Tufts.edu
- ^ Arcada.fi Template:Fi icon
- ^ The ViewTouch restaurant system by Giselle Bisson
- ^ a b Computerhope.com
- ^ a b c d Technet.com Cite error: The named reference "blogs.technet.com" was defined multiple times with different content (see the help page).
- ^ Project Looking Glass
- ^ Macworld.com November 11, 2006. Dan Moren. CES Unveiled@NY ‘07: Point and click coming to set-top boxes?
External links
- The men who really invented the GUI by Clive Akass
- Graphical User Interface Gallery, screenshots of various GUIs
- Marcin Wichary's GUIdebook, Graphical User Interface gallery: over 5500 screenshots of GUI, application and icon history
- The Real History of the GUI by Mike Tuck
- A History of the GUI by Jeremy Reimer of Ars Technica
- In The Beginning Was The Command Line by Neal Stephenson