Framework
- This article is about the general software development term; Framework is also the name of an office application suite, and Mac OS X frameworks are application frameworks.
In software development, a framework is a defined support structure in which another software project can be organized and developed. A framework may include support programs, code libraries, a scripting language, or other software to help develop and glue together the different components of a software project.
Frameworks are designed with the intent of facilitating software development, by allowing designers and programmers to spend more time on meeting software requirements rather than dealing with the more tedious low level details of providing a working system. For example, a team using Apache Struts to develop a banking web site can focus on how account withdrawals are going to work rather than how to control navigation between pages in a bug-free manner. However, there are common complaints that using frameworks adds to "code bloat", and that a preponderance of competing and complementary frameworks means that one trades time spent on rote programming and design for time spent on learning frameworks.
Outside of computer applications, a framework can be considered as the processes and technologies used to solve a complex issue. It is the skeleton upon which various objects are integrated for a given solution.
Example frameworks
- Apache Cocoon — from Apache Software Foundation
- Apache Struts — from Apache Software Foundation
- BREW - from Qualcomm
- Cactus - an open source framework for high performance computing, originally developed for gravitational physics simulations
- Catalyst — an open source web application framework written in Perl
- CakePHP — an open source web application framework written in PHP
- CodeIgniter - Code Igniter is a powerful PHP framework with a very small footprint written in PHP
- Canvas — an open source web application development framework written in PHP
- Cocoa — from Apple Computer
- Django — an open source web application framework written in Python
- Eclipse — from IBM
- EVA cms — from EVA Soluções
- Fusebox — a web application framework for ColdFusion and PHP.
- Gantry — an open source Perl web application framework
- MARF — an open source Java framework for audio/speech/voice and natural language processing
- NetBeans — an open source Java framework from Sun Microsystems
- .NET Framework — from Microsoft
- Mach-II — an MVC web application framework for ColdFusion and PHP
- Maypole framework — an open source web application framework written in Perl
- Model-Glue — an open source object-oriented MVC web application framework for ColdFusion
- Mono - an open source implementation of the Microsoft .NET Framework
- OpenXava - an open source J2EE framework for developing business application in a simple way
- PlanetSim - an object-oriented simulation framework for overlay networks and services
- PHROOT — PHP Rapid Object Oriented Technology Framework Project (PHP)
- Qt - an open-source C++ framework used in KDE project
- PRADO — component-based, object-oriented PHP web application framework
- Radicore — an open source web application framework that uses transaction patterns, written in PHP
- RIFE — an open source web application framework written in Java
- Rational Unified Process — a process framework for developing software
- RNA — an open source component-based, object-oriented PHP web application framework
- Ruby on Rails — an open source web application framework written in Ruby
- Sails framework — an open source web application framework written in Java
- Seagull — an open source framework written in PHP
- Spring framework — an open source framework which provides an MVC framework, transparent ways of integrating AOP into software and a well-structured exception hierarchy including automatic mapping from proprietary exception hierarchies
- Symfony — an open source web application framework written in PHP
- ThinWire - an open source Rich Internet application framework written in Java
- TurboGears — an open source web application framework written in Python
- WASP — an open source web application framework written in PHP
- Wicket — component-based Java web application framework
- Molins — PHP Struts-like framework for enterprise web applications
- web.framework — PHP MVC based framework for web applications
- Xaraya — Xaraya is a web application framework and content management system, written in PHP and released as free software under the GNU General Public License.
- Zheta — PHP objects framework for enterprise web applications
- XINS — Java-based framework for web applications
- Zend Framework — open source framework for developing web applications and web services.
- ZNF — PHP Struts-like framework for enterprise web applications
- Zoop Framework — open source component-based, object-oriented PHP web application framework
- Zope — a Python-based application server
- ZK Framework — an open source Ajax/XUL web application framework written in Java
See also
- Application framework
- Content management framework
- Multimedia framework
- Software framework
- Jini | Upnp | Salutation which have been called coordination frameworks.