GUI
A GUI (usually
pronounced GOO-ee) is a graphical (rather
than purely textual) user interface to a computer. As you read this, you are
looking at the GUI or graphical user interface of your particular Web browser. The term came into existence because the first
interactive user interfaces to computers were not graphical; they were
text-and-keyboard oriented and usually consisted of commands you had to
remember and computer responses that were infamously brief. The command
interface of the DOS operating system (which you can still get to from your
Windows operating system) is an example of the typical user-computer interface
before GUIs arrived. An intermediate step in user interfaces between the
command line interface and the GUI was the non-graphical menu-based
interface, which let you interact by using a mouse rather than by having to
type in keyboard commands.
Today's major
operating systems provide a graphical user interface. Applications typically
use the elements of the GUI that come with the operating system and add their
own graphical user interface elements and ideas. A GUI sometimes uses one or
more metaphors for objects familiar in real life, such as the desktop, the view
through a window, or the physical layout in a building. Elements of a GUI
include such things as: windows, pull-down menus, buttons, scroll bars, iconic
images, wizards, the mouse, and no doubt many things that haven't been invented
yet. With the increasing use of multimedia as part of the GUI, sound, voice,
motion video, and virtual reality interfaces seem likely to become part of the
GUI for many applications. A system's graphical user interface along with its
input devices is sometimes referred to as its "look-and-feel."
The GUI
familiar to most of us today in either the Mac or the Windows operating systems
and their applications originated at the Xerox Palo Alto Research Laboratory in
the late 1970s. Apple used it in their first Macintosh computers. Later,
Microsoft used many of the same ideas in their first version of the Windows
operating system for IBM-compatible PCs.
When creating
an application, many object-oriented tools exist that facilitate writing a
graphical user interface. Each GUI element is defined as a class widget from
which you can create object instances for your application. You can code or
modify prepackaged methods that an object will use to respond to user stimuli.