GUI

From Jonathan Gardner's Tech Wiki
Jump to: navigation, search

Introduction

GUI stands for "Graphical User Interface", as opposed to TUI which is "Text-based User Interface."

What is a user interface? It's the mechanism that users use to "talk" with computers.

History

In the beginning, all computers had a very primitive user interface. Users would need to somehow specify bits and bytes, and then computers would do the calculations as described. This was, of course, very burdensome to the human users.

Over time, the TUI came into popularity. Users could type text into the computer, something almost resembling English, and the computer would behave according to the commands. This interface is still popular today, especially in the Linux/Unix/BSD communities. Programmers use it to describe their programs to computers.

The late 80's and 90's saw a revolution in GUIs. Now, users can use the mouse and keyboard to point, click, and type their commands into the computer. The computer would respond with pictures, sounds, colors, and text.

Creating a GUI

There are a very large number of options in writing GUIs today.

  • You can write applications meant to run on an operating system. These typically use a library that abstracts out the components of a GUI, such as KDE, Qt, Gnome, Gtk, and many, many more.
  • You can write web applications that are a series of pages served through HTTP. The browser interprets the web pages and handles the communication between host and client.
  • You can write mobile appllications that run on specialized hardware, such as the iPhone or cell phones.
  • You can even write video games that run on game machines such as the Nintendo Wii, Playstation 3, and X-Box 360.

My recommendations for a low-cost, simple GUI is the web application. This will give you the greatest flexibility with the minimum amount of work.

Libraries

New Concepts

  • ZUI: Zooming user interface
  • 3D UI: 3D UI (as compared to the 2D UI we are familiar with today.)