This is a WWW page originally created by students (see other credits on this page) but now copied and stored by Steve Draper as part of the CSCLN ATOM.

Event Based Systems and Object Oriented Languages

Human Computer Interaction




Obviously this not a representation of real life!!!



The team responsible for the following lecture notes consists of

  1. Iain McWhirter
  2. Louise Travers
  3. Michael Williams




The main questions pertaining to today's lecture were :




What are the advantages of an event based system ?

Event based systems allow the computer to respond to certain commands or conditions at any time. As a result, an event based system constantly checks to see if certain events have occurred or not. A good example of this would be the F1 key in most Windows based programs. At any time during the use of the program, pressing the F1 key will automatically bring up a HELP menu to provide information about the current application.

Input to the system can come from a number of sources, e.g. while operating the computer you can use the mouse or strike a key, in Pascal you can prompt with a 'Writeln' command. With an event driven cue it is possible to do other things. A basic mechanism would order a queue of events, invoking one procedure for adding an event and another for getting to the next. Or when used in conjunction with an object it can respond to virtual cues.

The advantage for programmers is that solutions can be provided using 'whenever' commands. I.e. if you want a bell to sound whenever an icon is clicked, you attach a bell-ringing proceedure ('method') to the icon, meaning that written code does not have to be executed each time the procedure is called. Software that posts events does not need to know who knows.



What are the differences between object oriented languages and procedural languages ?

Procedural languages are very linear in that they can only follow a certain path during execution. This makes it very difficult, if not impossible, to make a program which has the facility to allow users to bring up a certain sub-program such as a help menu at the press of a key. Object oriented languages, on the other hand, can call other objects such as help files at any point since the two separate programs or objects are not linked in any way. It is this flexibility which allows event based systems to operate effectively.

This page was last updated on 12/03/98.
This page is maintained by Iain McWhirter