Home About Applications Software License Documentation Download Community

Application Framework

08 March 2004
Framework Standards Direction

Object-Oriented Application Framework

An Application Framework provides a generic, 'semi-complete' application, which is customized and built upon to produce a complete, specific working application.

Applications Frameworks build on an Object Oriented implementation in a particular language. In turn, software applications using frameworks build on the Application Framework. A good Application Framework reduces much of the tedium of developing software applications by defining patterns commonly found across software, and implementing these in a reuseable, well organized class structure.

Read an excellent article on the Application Framework design pattern here


Cross Platform

Applications written with the Keystone framework will compile on several computer platforms. It is a goal of the framework design and implementation that applications writing using it will build on any of the framework supported platforms without special modification to the application source code.

The current platforms for Keystone are:

The framework design specifically addresses the following platform specific areas


Agile

Keystone is lightweight by design. Due to a focus for use in embedded environments, and a clear development path of implementing Web standards at the framework core, Keystone applications are:

Keystone C Language

The Keystone Framework and applications writing using it are writing in the Keystone C language. This custom language is an extension of the C programming language to facilitate Object Oriented programming, and is heavily based on (though not compatible with) the C++ language.

Keystone C features everything you would expect in a modern Object Oriented language, including:

Being a descendant of C and a close cousin of C++, Keystone C will be instantly familiar to programmers with a C/C++ development background. Furthermore, most source code tools which work with C++ code will work just fine with Keystone C. These include:


e analysis and documentation
  • Source level debuggers