Never confuse education with intelligence, you can have a PhD and still be an idiot.
- Richard Feynman -

Interacting with programs

From Juneday education
Jump to: navigation, search

Interaction is taking place between the user and the program. This interaction can be done in many ways, text based, graphical, web, voice, braille etc. We will focus in just a few here and describe them briefly.

Non interactive

Typically this is done using a file (with settings), via the command line or some other means.

Command line

An example of command line is when you invoke a compiler. You typically write something like:

# javac org/mygame/


# gcc network/file-transer.c

We have written a separate on how a program can process the information passed to it via its command line.


Text based

Sometimes referred to as:

  • text based
  • chui (character based user interface)

This is typically the way we communicate with a running program we run in a terminal. We use text to interactively give the program input typically using the keyboard and get feedback from the program via stdout.

The above can be achieved with System.out.println (Java) or printf (C) but there are framework you can use that makes the development quicker (and probably less bug prune).

= GUI - Graphical User Interface

You most likely use graphical user interfaces all the time. A browser, word processor, email program are examples of such.

Note: Even the terminal emulator is a gui - even though it is most often used to run text based programs.