TYPE was born in 1999 as a set of three classes (collectively known as the york package) but has since evolved into a full environment that incorporates numerous pedagogic technologies. Today, TYPE refers to two packages, two applications, and two standards, as outlined below. For more details on using these technologies, refer to Roumani's textbook: Java By Abstraction available from Addison Wesley.

The packages are:

  • type.lang
    Augments the standard Java language by adding classes to facilitate I/O, file I/O, serialization, graphics, application testing, and design-by-contract constructs.
  • type.lib
    A set of carefully designed classes that expose OOP principles, S/E guidelines, and design patterns.
The applications are:
  • UniCon
    A platform-independent console (Universal Console) to facilitate the compilation and running of Java programs.
  • eCheck
    A program to test student programs on their home machines, identify problems, and if all tests are successful, connect to the course site and update the mark database.
The standards are:
  • Coding Style
    A set of rules to abide by when writing Java programs. They make your code easier to read, easier to debug, and less likely to contain errors.
  • Report Style
    Guidelines for writing reports about software projects.

TYPE is a brainchild of prof Hamzeh Roumani.