Unterschied zwischen Web Application Framework und einem Content Management System?

8

Sind beide völlig unterschiedliche Konzepte? Oder gibt es eine Überlappung ihrer Bedeutung?

Wäre es richtig zu sagen, dass ein Web-Framework für die Erstellung eines Front-End verwendet wird, während ein CMS für das Back-End verwendet wird?

Wenn ja, sollte das Web Framework die gleiche Technologie wie das CMS verwenden? Zum Beispiel könnte Ruby on Rails in Kombination mit Drupal verwendet werden? Oder hat das überhaupt keinen Sinn?

    
StackedCrooked 28.10.2009, 10:04
quelle

4 Antworten

19

Sind beide völlig unterschiedliche Konzepte? Oder überschneiden sie sich in ihrer Bedeutung?

Ein Web (Application) Framework ist ein allgemeines Toolkit für die Entwicklung von Webanwendungen. Das kann jede Art von System sein, die Daten verwaltet und verarbeitet, während sie ihre Daten und Dienste menschlichen Benutzern (über Webbrowser und andere interaktive Clients) sowie Maschinen über das http-Protokoll zur Verfügung stellt.

Ein CMS ist eine Art solcher Anwendungen: ein System zur Verwaltung von Inhalten, die auf Websites angezeigt werden. Gewöhnlich / historisch bedeutet dies vor allem die Verwaltung (Teile) von Text von "Seiten", die auf einer Website gezeigt werden, und Benutzer, die unterschiedliche Zugriffsebenen haben, um diesen Inhalt zu verwalten. Hier kommen das C und das M her.

Mit einem CMS können Sie Webinhalte verwalten. Mit einem Web-Framework erstellen Sie Webanwendungen.

Wäre es richtig zu sagen, dass ein Web-Framework für die Erstellung eines Front-Ends verwendet wird, während ein CMS für das Back-End verwendet wird?

Nein. Es wäre richtig zu sagen, dass ein Web-Framework verwendet werden kann, um ein CMS zu erstellen. Beide enthalten Teile, die sowohl im Backend als auch am Frontend funktionieren. Häufig basiert ein CMS auf einem Web-Framework - manchmal erstellen CMS-Entwickler ein eigenes Web-Framework, und manchmal machen sie sogar die API dieses Frameworks verfügbar, sodass ein Entwickler sie erstellen kann Erweiterungen des CMS in einer Weise, als ob er eine Anwendung mit einem Web-Framework entwickeln würde. Drupal macht das wirklich, also können Sie echte Web-Anwendungen basierend auf dem integrierten Framework erstellen - mit dem Vorteil, dass sie sich auch leicht in das CMS integrieren lassen. Aber das (das Offenlegen der API eines Web-Frameworks) ist kein notwendiges Kriterium, um als CMS bezeichnet zu werden.

Wenn ja, sollte das Web Framework die gleiche Technologie wie das CMS verwenden? Zum Beispiel könnte Ruby on Rails in Kombination mit Drupal verwendet werden? Oder hat das überhaupt keinen Sinn?

Es ist möglich, zwei existierende Systeme zu kombinieren, die mit diesen beiden erstellt werden (zB weil Sie einige Daten auf einer von drupal verwalteten Website anzeigen möchten, die bereits in einem Rails-basierten System existiert) . Aber da Drupal Ihnen auch einige der genrischen Funktionen seines zugrundeliegenden Web-Frameworks zur Verfügung stellt, ist es möglicherweise nicht notwendig. Sie müssten zwei sehr unterschiedliche Systeme verwalten und lernen und alle Probleme mit der Interoperation behandeln. Also, ich würde versuchen, eine Website mit nur einer von ihnen zu erstellen, wenn möglich und nur kombinieren, wenn es einen guten Grund gibt.

    
Henning 28.10.2009, 10:29
quelle
6

Sie sind unterschiedliche Konzepte. Ein CMS kann auf einem Web-App-Framework aufbauen, aber ein Web-App-Framework hat keine direkte Beziehung zu einem CMS. Es ist auf einer niedrigeren Ebene und bietet eine Plattform für jede Art von Web-App, die darauf gebaut werden, von denen ein CMS ein Beispiel ist.

    
JonoW 28.10.2009 10:35
quelle
2

Drupal läuft auf PHP und Ruby läuft auf Rails, naja, Ruby, also würden sie nicht zusammen spielen.

Um das Wasser ein wenig zu verdunkeln, beschreibt sich Drupal selbst als ein Content-Management-Framework , das im Wesentlichen ein Content-Management-System ist mit Haken, um es zu verlängern. Das schafft eine Überlappung. Die drupal-Übersicht beschreibt dies besser als ich.

    
Jeremy French 28.10.2009 10:42
quelle
-3

Wäre es richtig zu sagen, dass ein Web-Framework für die Erstellung eines Front-Ends verwendet wird, während ein CMS für das Back-End verwendet wird?

Es ist nicht "korrekt", aber es ist auch nicht falsch. Ein Web-Framework ist ein allgemeines Konzept - viele Dinge zählen. Ein CMS ist ein spezifisches Konzept, das oft in einem Web-Framework erstellt wird. Manchmal sind CMS eigenständige Web-Anwendungen. Häufiger jedoch ist ein CMS ein Backend-System, das ein angepasstes Präsentations-Frontend erfordert.

Soll das Web Framework die gleiche Technologie wie das CMS verwenden?

Sollte nicht wichtig sein. Am Ende der API-Definition können Framework und CMS überhaupt über eine Implementierung verfügen.

Web App Frameworks müssen im Allgemeinen entweder HTTP-Anfragen beantworten oder sich an etwas wie Apache anschließen.

Ein CMS ist eine verherrlichte Datenbank, und jede vernünftige API ist gut. In den meisten Fällen verwenden sie jedoch auch HTTP als Schnittstellenprotokoll.

Könnte Ruby on Rails in Kombination mit Drupal verwendet werden?

Sicher. Puristen werden dagegen sein, aber es gibt keinen technischen Grund, warum sie nicht kooperieren können.

    
S.Lott 28.10.2009 10:09
quelle