Application framework
An
Application framework is a term usually used to refer to a set of
libraries or classes that are used to implement the standard structure of an
application for a specific
operating system. By bundling a large amount of reusable code into a framework, much time is saved for the developer, since she is saved the task of rewriting large amounts of standard code for each new application that is developed. Application frameworks became popular with the rise of the
GUI, since these tended to promote a standard structure for applications. It is also much simpler to create automatic GUI creation tools when a standard framework is used, since the underlying code structure of the application is known in advance.
Object-oriented programming techniques are usually used to implement frameworks such that the unique parts of an application can simply inherit from pre-existing classes in the framework.
One of the first commercial frameworks was MacApp, written by Apple Computer for the Macintosh. Originally written in an extended (object-oriented) version of Pascal, it was later rewritten in C++. Other popular frameworks for the Mac include Metrowerks Powerplant and MacZoop (all based on Carbon). A different approach to an application framework is Cocoa for Mac OS X.
Microsoft created a similar product for Windows called the Microsoft Foundation Classes or MFC.
There are also a number of frameworks which will create identical applications for both Macintosh and Windows from the same source code.