Application Service Framework
software framework that is designed to support the development of dynamic websites, web applications and web services. The framework aims to alleviate the overhead associated with common activities performed in Web development. For example, many frameworks provide libraries for database access, templating frameworks and session management, and they often promote code reuse
Why go with Application Service Framework (or related Content Management Systems)?
Consider the example of a real estate agent with 500 houses for sale. In a static web site, the agent would have to create 500 pages in order to make the information available. In a dynamic website, the agent would simply connect the dynamic page to a database table of 500 records.
Model, View Controller Basis
Many frameworks follow the Model View Controller (MVC) architectural pattern to separate the data model with business rules from user interface. This is generally considered a good practice as it modularizes code, promotes code reuse, and allows multiple interfaces to be applied.
Push-based vs. Pull-based
PUSH These frameworks use actions that do the required processing, and then "push" the data to the view layer to render the results. Struts, Django, Ruby on Rails and Spring MVC are good examples of this architecture.
PULL An alternative to this is pull-based architecture, sometimes also called "component-based". These frameworks start with the view layer, which can then "pull" results from multiple controllers as needed. In this architecture, multiple controllers can be involved with a single view. Struts2, Lift, Tapestry, JBoss Seam, Wicket and Stripes are examples of pull-based architectures.
How do you choose - consider these items:
- language/system requirements (and your capabilities)
- support
- longevity
- latest update
- industry support and use
- databases support
Examples below taken from http://en.wikipedia.org/wiki/List_of_web_application_frameworks --look there for updates
Examples
PHP
|