From LQWiki
A framework, very generally, refers to the packages of libraries and APIs that provide a reusable toolkit where software that can be constructed by merely connecting up these software components together. Often, frameworks are object oriented.
Frameworks are used to ensure software reliability (since the framework should be reliable itself), lesser time spent programming, and, in the case of graphical application development, a consistent interface between applications using the framework.
More specifically, a framework in the OPENSTEP/GNUstep/Mac OS X development environment is a collection of Objective-C classes that provide key application functionality. For example, the "Foundation" framework provides core functionality such as managing strings, numerical services, filesystem abstractions, and so on. The "Application Kit" framework provides mechanisms for creating graphical applications, such as creating panels, buttons, and other widgets.

This page is available under a