wCMF

  • Auftraggeber

    wemove

  • Laufzeit

    2005 - 2024

Beschreibung

Das wCMF ist ein objektorientiertes Framework zur Programmierung von Web-Anwendungen (z.b. CMS, CRM). Anwendungen sind nach dem Model-View-Controller Muster (MVC) aufgebaut und können hinsichtlich Datenmodell, User-Interaktionen und Layout komplett auf individuelle Anforderungen zugeschnitten werden.

Der wCMFGenerator bietet einen MDA-Ansatz zur komfortablen Anwendungsentwicklung. Aus einem UML Modell, das Datenmodell und Anwendungsablauf beschreibt, erstellt er mittels Standard-Templates eine lauffähige Anwendung. Diese kann Schritt für Schritt unter Verwendung eigener Views und Controller den individuellen Anforderungen angepasst werden.

Die Dokumentation des Frameworks ist unter wcmf.wemove.com verfügbar.

Designziele

wCMF wurde unter Berücksichtigung folgender Ziele entwickelt:

  • Unterstützung jedweder Datenstruktur (auch existierender Anwendung) und -speicherung (RDB, XML).
  • Komfortable, schnelle Anwendungsentwicklung durch Automatisierung sich wiederholender Aufgaben, aber dennoch
  • Unterstützung individueller UI Designs und User-Interaktionen zur Integration in vorhandene Umgebungen.
  • Objektorientiertes Design mit wohldefinierten Erweiterungspunkten und Separierung der Zuständigkeiten wie Präsentation und Persistenz.
  • Minimale Systemanforderungen, so dass wCMF Anwendungen auf einfachen Webhosting Paketen lauffähig sind.

Features

  • Persistenzschicht:
    • Flexible Mapper-Architektur mit Adaptern zu RDBMS
    • Optimistischer und Pessimistischer Locking-Mechanismus
    • Komfortable Suchmöglichkeiten durch Query-Templates und Criteria API
    • Query-Caching and Eager-Loading von Relationen
    • Transaktionen
  • Rollenbasierte Rechteverwaltung (für Aktionen, Entity-Typen und -Instanzen, Entity-Attribute)
  • Event-System
  • Dependency Injection
  • Integration der Smarty Template Engine
  • Lucene basierte Suche
  • I18n Unterstützung
  • Flexibles Logging (Apache log4php)
  • SOAP und REST Schnittstelle für CRUD Operationen auf allen Objekten
  • Eclipse MDT/UML2 kompatibler Code-Generator für Model-Driven Software Development
  • Dojo basierte Standardanwendung

Systemanforderungen

Minimale Systemanforderungen für den Einsatz des wCMF sind PHP >= 7.4 und ein Webserver. Empfehlenswert ist die Nutzung einer Datenbank (z.B. MySQL). Auch XML als Datenbasis wird unterstützt.

Download

Das wCMF liegt aktuell in Version 4.1 vor und steht auf github.com als Open Source Projekt (MIT Lizenz) zur Verfügung. Ältere Versionen (< 4.0) sind auf sourceforge.net gehostet.

Referenzen

Eine Auswahl von Projekten, die mit wCMF realisiert wurden finden Sie hier.

Technische Aspekte

PHP, UML, OpenArchitectureWare 4.3