webmanufacture

Von Context bis Spaces | Ein Paradigmenwechsel?

DruckversionEinem Freund senden

Die Möglichkeit, unterschiedlichste Komponenten einer Website kontextbezogen zusammenzuführen (context), sie zu bündeln (feature) und paketweise in unterschiedlichen Räumen eines Portals zu managen (spaces) eröffnet Drupalarchitekturen unseres Erachtens nach neue Dimension, in gewisser Weise beschreibt sie einen Paradigmenwechsel.

Context
erlaubt es, Kontextbedingungen und Reaktionen für verschiedene Teile der Website herzustellen;
anders formuliert: für jeden Zusammenhang können die Bedingungen gewählt werden, die diesen Zusammenhang auslösen, bzw. unter welchen Aspekten das System auf aktive Zusammenhänge reagieren soll.
Die Bedingungen sind vorstellbar als eine Reihe von Regeln, die überprüfen, welcher Zusammenhang aktiv ist und welche mit ihm verbunden Reaktionen auszulösen sind.

Features
ermöglicht die Festlegung und das Management von Eigenschaften in Drupal.
Ein Feature ist eine Sammlung von Drupal Entitäten (Eigenschaften, Einstellungen, Kontexte usw.), die zusammengenommen einen bestimmten Gebrauchsfall darstellen. 
Features stellen eine UI und API zur Verfügung, um verschiedene Seitenkomponenten zu praketisieren (zu bündeln) und zu ex- und importieren.

Spaces
Spaces ist ebenfalls ein API-Modul. Es stellt Optionen zur Verfügung, Konfigurationsoptionen (z.B. Features) auf Websiteniveau anzuwenden. Es macht diese (nutzerseitig) konfigurierbar und stellt sie einzelnen "Räumen" (z.B. Gruppen) einer Website zur Verfügung, bzw. überschreibt vorhandene Zusammenhänge.

Natürlich ist das Paketisieren und Ex-, bzw. Importieren von Anwendungszusammenhängen für Webdesigner und Entwickler eine ungemeine Arbeitserleichterung. Mit jeder neuen Installation wiederholen sich in der Regel viele Einstellungsvorgänge. 
Jedoch bietet die vorgestellte Funktionalitätenumgebung weit mehr.
Um es an einem Beispiel festzumachen wäre es möglich, einen Blog (als Kombination eines Contenttyps mit ergänzenden CCK-Feldern, erweitert mit einer Freetagging-Option und zusätzlichen Blöcken mit neuen Kommentaren und einer Archivlegende) einer bestimmten Nutzergruppe (Rolle) zur Verfügung zu stellen, die zudem vom User individuell aktiviert, bzw. deaktiviert werden kann.

In welche Richtung die Entwicklung geht, beschreibt meinof droste in einem lesenswerten Beitrag mit interessanten weiterführenden Links.