Framework
From Wikipedia, the free encyclopedia
- This article is about the general software development term. See also Framework (disambiguation).
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.
[edit] Example frameworks
- AjaxCFC - ColdFusion / AJAX Integration Framework
- Apache Cocoon — from Apache Software Foundation
- Apache Tapestry — an open-source framework for creating dynamic, robust, highly scalable web applications in Java
- Apache Struts — from Apache Software Foundation
- ATK - an open-source framework targeted at developers who wish to focus on business logic, instead of coding HTML.
- 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
- Canvas — an open source web application development framework written in PHP
- Click — J22EE web application framework created for commercial Java developers
- Cocoa — from Apple Computer
- Django — an open source web application framework written in Python
- Eclipse — from Eclipse Foundation
- EVA cms — from EVA Soluções
- Fusebox — a web application framework for ColdFusion and PHP.
- Gantry — an open source Perl web application framework
- Grails — Groovy based open source web application framework
- Hamlets - an easy-to-use, easy-to-understand, lightweight, small-footprint, servlet-based content creation framework written in Java
- Helma — Javascript Web Application Framework, combining Java and Javascript using Rhino and the Jetty web server.
- Lampshade — from Think Computer Corporation
- 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
- MacApp — an object-oriented Macintosh programming framework from Apple Computer from 1985 through 2001
- 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
- StCAD - a open-source 3D Motion Simulation CAD Framework
- struts4php - a open-source MVC framework written in PHP
- 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.
- XNA Framework - XNA Cross Platform Game Development Framework
- 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...
[edit] See also
- Application framework
- Content management framework
- Multimedia framework
- Software framework
- Jini | Upnp | Salutation which have been called coordination frameworks.