Next: X Window Principles
Up: The X Window System
Previous: What is X Windows?
Before we study X Windows in detail it is worth considering why we need GUI's.
GUIs provide an easy means of data entry and modification. They should provides
an attractive and easy to use interface between human and machine. So easy in
fact that a non-computer literate person could use the system.
GUI's provide a better means of communication than cumbersome text-based
How do GUIs provide such facilities? By means of:
- Extensive use of visual control items - Buttons, menus, icons, scroll
- Data can be manipulated intuitively on screen.
- If a standard GUI is adopted then consistency of use across platforms and
applications is afforded. Nearly all MS Windows (and Apple Macintosh) have the
same look and feel so learning time for a new application is lessened.
- Multiple applications can be run simultaneously on most machines these
days. GUIs provide better screen management of such processes - we can
assign one (or more) window to each application.
Although GUIs provide some very powerful advantages, there are a couple
drawbacks to the GUI approach:
- - As we will shortly see even the most basic windowing
program can be quite large. (hello world prog will about 2 pages long!!.)
This is because we will have to write or call upon many functions to control the
windowing system - e.g. create, move, resize etc. windows; handle
input via mouse and keyboard actions; control graphics.
- - a different approach to programming is needed from the
command-line approach. You have been used to top down structured
programming approach. We will have to adopt a different strategy known as event-driven programming where the actions in our program will be triggered by
mouse and keyboard actions.