C++-Webframeworks in Übersicht: CppCMS

Standard

Bei meiner Suche nach geeigneten Webframeworks bin ich auf verschiedene Projekte gestoßen, die ich hier in einer kleinen Serie kurz vorstellen möchte:

Das CppCMS-Framework gibt es seit 2008. Es steht unter einer LGPLv3 license und alternativ unter einer Commercial License.  Das Projekt hat zwei Anwendungen an Hand deren man gleich die Praxistauglichkeit überprüfen kann.  Das ist zum einen WikiPP ein Wiki und zum Anderen CppBlog. Beides nennt sich „Engines“. Per Wikipedia-Definition ist eine Engine „[…] in der Informationstechnologie ein eigenständiger Teil eines Computerprogramms.“ Also darf man wohl keine „schlüsselfertige“ Anwendung erwarten. Für die Anbindung an Datenbanken gibt es noch ein zusätzliches Framework das CppDB. Es deckt die Datenbanken MySQL, PostgreSQL und Sqlite3 ab.

ohloh.net code analyses

Ich habe weder CppCMS noch CppBlog und WikiPP getestet. Was mich abgeschreckt hat, war die geringe Aktivität des Projektes. Es sah für mich tot aus. Ich habe auch keine Mailing-Liste gefunden, auf der man sich hätte einschreiben können. Ganz tot scheint das Projekt aber nicht zu sein den der letzte Post auf dem Weblog ist vom 24.6.2013.

Siehe auch: „C++-Webframeworks in Übersicht: Als Tabelle“


Creative Commons Lizenzvertrag

C++-Webframeworks in Übersicht: Als Tabelle

Standard

Bei meiner Suche nach geeigneten Webframeworks bin ich auf verschiedene Projekte gestoßen, die ich hier in einer kleinen Serie kurz vorstellen möchte. Hier eine tabellarische Übersicht, über die vier wichtigsten Projekte:

Projektname Wt (Witty) CppCMS Tntnet Treefrog
Projektstart 2009 2008 2005 2011
Abstraktionslevel Sehr hoch Mittel Mittel Sehr hoch
Aktive Entwickler >5 1 >1 >2
Code-Zeilen 285.620 1.839.480 260.388 51.335
Prepompiler Nein Ja Ja Ja
Abhängigkeiten
  • CMake
  • Boost-Lib
  • OpenSSL  (Opt.)
  • Pango (Opt.)
  • Boost-Lib
  • Python 2.x
  • CgiCC
  • libgcrypt
  • gettext
  • cxxtools
  • automake*
  • autoconf*
  • libtool*
  • postgresql-devel**
  • zlib-devel
  • openssl-devel
Qt
Lizenz
  • Open  Source
  • proprietär
  • Open Source
  • proprietär
OpenSource OpenSource
Datenbank-
unterstüzung
  • Firebird
  • SQLite
  • PostgreSQL
  • MySQL
  • SQLite
  • PostgreSQL
  • MySQL
  • SQLite
  • PostgreSQL
  • MySQL
  • Oracle
Über Qt:

  • MongoDB
  • SQLite
  • PostgreSQL
  • MySQL
Mailingliste Ja (sehr aktiv) Nein Ja Ja
Authentifikations-
methoden
  • Facebook
  • Google
  • E-mail-Token
  • SHA1
  • MD5
  • OAuth
  • Token
Extras E-mail-Versand
  • Serialisierung
    • XML
    • Json
    • CSV
  • Logging
  • Komplexes URL-Routing
  • REST
    • XML
    • Json
    • Binary
    • CSV
  • SOA
  • Validation
  • Mailer
  • Logging
  • Plugin
  • Image Manipulation
Pakete in
Distributionen
Ja Nein Ja Nein
Dokumentation Mittel,
viele Beispiele
Wenig Mittel,
viele Beispiele
Mittel
OS
  • Linux
  • Windows/Cygwin
  • MacOS
  • Android
  • Raspberry Pi
  • QNX
  • Solaris
  • Linux
  • Windows/Cygwin
  • MacOS
  • FreeBSD
  • Linux
  • UNIX-like OS
  • Linux
  • Windows
  • UNIX-like OS
  • MacOS

Erläuterungen
* Abhängigkeit wenn die Bibliothek selber übersetzt wird.
** Abhängigkeit optionaler Funktionen.


Creative Commons Lizenzvertrag