Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between Web Application Framework and a Content Management System?

Are both completely different concepts? Or is there an overlap in their meaning?

Would it be correct to say that a Web Framework is used for the creation of a front-end, while a CMS is used for the back-end?

If yes, then should the Web Framework use the same technology as the CMS? For example could Ruby on Rails be used in combination with Drupal? Or doesn't that make any sense at all?

like image 575
StackedCrooked Avatar asked Oct 28 '09 10:10

StackedCrooked


People also ask

What is difference between framework and CMS?

A framework is a set of codes used to build websites and web applications. Unlike a CMS, it doesn't have 'ready-to-use' tools to manage and update content.

How is CMS different from Web application?

On the other hand, a CMS or content management system is a web application for managing content. A CMS is built on top of an underlying framework. It enables users to install themes, plugins, etc. without effecting the essential functionality of the site.

Which is better CMS or framework?

If it is a minor or basic project, such as an informative website, it is recommended to use the CMS as it is easy to manage but if it is a more complex project, based on software development, it is much more advisable to develop based on a framework.

Is CMS a web application?

A content management system (CMS) is a software application that enables users to create, edit, collaborate on, publish and store digital content. CMSes are typically used for enterprise content management (ECM) and web content management (WCM).


2 Answers

Are both completely different concepts? Or is their an overlap in their meaning?

A web (application) framework is a lower level, generic toolkit for the development of web applications. That could be any type of system managing and processing data while exposing it's data and services to human users(via web browsers and other interactive clients) as well as machines via the http protocol.

A CMS is one type of such applications: a system to manage content shown in websites. Usually/historically, this mainly means managing (pieces of) text of "pages" shown in a web site, and useres that have different levels of access to manage this content. That's where the C and the M come from.

With a CMS, you can manage web content. With a Web framework, you build web applications.

Would it be correct to say that a Web Framework is used for the creation of a front-end, while a CMS is used for the back-end?

No. It would be correct to say that a web framework can be used to create a CMS. Both contain parts that work on the backend as well as on the front end. Often, a CMS is based on a web framework - sometimes CMS developers build there own web framework, and sometimes they even expose the API of this framework, so a developer can create extensions to the CMS in a way as if he would develop an application with a web framework. Drupal really does this, so you can create real web applications based on the integrated framework - with the upside that they will also be easily to integrate into the CMS. But that(exposing the API of a web framework) is no necessary criteria for being called a CMS.

If yes, then should the Web Framework use the same technology as the CMS? For example could Ruby on Rails be used in combination with Drupal? Or doesn't that make any sense at all?

It's be possible to combine two existing systems build with these two, (e.g. because you want to show some data in a web site managed by drupal, that already exists in a Rails-based system). But as Drupal also provides you some of the genric functionality of it's underlying web framework, it might not be necessary. You would have to manage and learn two very different systems and handle all the problems with there interoperation. So, I'd try to build a Website with only one of these if possible and only combine them if theres a good reason to.

like image 103
Henning Avatar answered Sep 28 '22 07:09

Henning


They're different concepts. A CMS can be built on top of a web-app framework, but a web-app framework has no direct relationship to a CMS. Its at a lower level, providing a platform for any type of web-app to be built on top of it, of which a CMS is an example.

like image 38
JonoW Avatar answered Sep 28 '22 09:09

JonoW