
The purpose of a framework is to improve the efficiency of
creating new software. Frameworks can improve developer
productivity and improve the quality, reliability and robustness of new
software. Developer productivity is improved by allowing developers
to focus on the unique requirements of their application instead of
spending time on application infrastructure (“plumbing”).
Many people equate the term software framework with an object-oriented
software library, or set of libraries, intended to provide reuse.
However, there is an important difference between a framework and a
library, that difference is often called “inversion of
control.” If you’re using a library, the objects and
methods implemented by the library are instantiated and invoked by your
custom application. You need to know which objects to instantiate and
which methods to call in order to achieve your goals. On the other
hand, if you’re using a framework, you implement the objects and
methods that are custom to your application and they are instantiated and
invoked by the framework. A framework defines the flow of control for
the application.
Advantages
- Reuse code that has been pre-built and pre-tested. Increase the reliability of the new application and reduce the programming and testing effort, and time to market.
- A framework can help establish better programming practices and appropriate use of design patterns and new programming tools. A framework upgrade can provide new functionality, improved performance, or improved quality without additional programming by the framework user.
- By definition, a framework provides you with the means to extend its behavior.
Disadvantages
- Creating a framework is difficult and time-consuming (i.e. expensive).
- The learning curve for a new framework can be steep.
- Over time, a framework can become increasingly complex.
Most Promising Frameworks
1. Zend Framework

Zend Framework is an object oriented framework written in PHP 5. It is
based on simplicity, corporate friendly license, and a rigorously tested
agile codebase. The loosely coupled architecture also allow developers to
use Zend components within other framework.
2. Symfony

Symfony is a PHP 5 framework which provides an architecture, components
and tools for developers to build complex web applications faster. The
official site provides a practical tutorial for Symfony beginner too.
3. CodeIgniter

CodeIgniter is another popular PHP framework. It has the advantage of
having a wiki for easier navigation. New users can get started easily by
referring to its documentation. It supports PHP4, which makes it
can’t take full advantage of PHP5.
4. CakePHP

Using commonly known design patterns like MVC and ORM within
the convention over configuration paradigm, CakePHP reduces development
costs and helps developers write less code.
5. Prado

Prado require PHP5 and above to run, and it is a component-based and event-driven programming framework for developing Web applications. There is a quick start tutorial for beginner too.
6. Kohana

Kohana is a PHP 5 framework that uses the Model View Controller
architectural pattern. It aims to be secure, lightweight, and easy to use.
Kohana is originally based on CodeIgniter, but it is strict PHP5 OOP, which
i think is more suitable to use in building new and large scale
projects.
7. Solar Framework

Solar is a PHP 5 framework for web application development. It is fully
name-spaced and uses enterprise application design patterns, with built-in
support for localization and configuration at all levels.
8. Fuse

FUSE is a Model View Controller framework for PHP. Taking influence from
other web frameworks such as Ruby on Rails and CakePHP, then adding in
custom, intuitive features of our own design, FUSE has developed into a
robust, stable platform for MVC development using object oriented PHP.
9. Yii PHP Framework

Yii is a high-performance component-based PHP framework best for
developing large-scale Web applications. It has a full stack of features
and written in strict OOP(require PHP5 and above).
10. Akelos PHP Framework

The Akelos PHP Framework is a web application development platform based
on the MVC (Model View Controller) design pattern.
Other alternative PHP frameworks
11. Recess
12. Agavi
13. Qcodo
14. Zoop
15. QPHP
16. Seagull PHP
17. PHPDevShell
18. PHPOpenBiz
19. WASP
20. evoCore
21. Lion
22. Flow3
|
This page was last modified on 23 Sep 2010 at 23:31:13. |
Gautam Kumar EDP Manager |
» CodeIgniter A recommendation for PHP Programmer
» PHP Framworks Why when and which
» Solving Floating point number precision lost problem in PHP
» Handling array of HTML Form Elements in JavaScript and PHP
» How to filter user submitted data easily in PHP
» Prevent form post request from another domain in PHP
» Flaw in and or logical operator php
» Default arguments functions php
» Submit Form without Refreshing Page with Jquery
» MySQL Performance Tips
» Free ajax chat applications in PHP
» Return More Than One Value From a Function in PHP
» PHP Optimization Tips
» PHP Error Handling
» Useful PHP Classes and Libraries
» Useful Tools For PHP Developers
» PHP Frameworks
» Web based HTML Editors
» 301 redirect in PHP and .htaccess
» Hiding PHP file extension
» Rredirect Browser HTTPS SSL PHP
» Tighten php security functions
» PHP Framworks
