Konstrukt Framework

Konstrukt Framework

Das "Konstrukt Framework" ist ein von mir in Perl geschriebenes Webentwicklungs-Framework.

Kurzbeschreibung

Dieses Framework zielt unter anderem auf die Trennung von Präsentation, Logik und Inhalt ab.

Die Präsentation wird grundsätzlich durch ein mächtiges Templating-System, das eine feingranulare Modularisierung der Präsentations-Komponenten ermöglicht, umgesetzt. Templates können beliebig miteinander verschachtelt werden. Das Templating-System hat eine einfache Syntax, die jeder Nicht-Programmierer versteht.

Die Logik ist in Plugins gekapselt, die über einfache Tags nahtlos in die Website integriert werden können. Man kann ohne großen Aufwand eigene Plugins erstellen und vorhandene Plugins auch bei der Entwicklung eigener Plugins über ein Perl-Interface nutzen. Der Kern des Frameworks übernimmt zudem alle lästigen Aufgaben, so dass man sich voll auf die Logik der eigenen Anwendung konzentrieren kann.

Der Inhalt aller Application-Plugins wird mittels Perl DBI in Datenbanken gespeichert. Die Backends für jedes Plugin sind als separate Plugins realisiert, die einfach mit Plugins für andere Datenhaltungsmöglichkeiten ausgetauscht werden können. Statischer Inhalt (Layout, statische Webseiten, …) wird in modularen Templates abgelegt.

Eine Webpage beschreibt nur, was sie enthält, nicht wie sie generiert wird. Die Webpages selbst sind also sehr einfach:

<!-- benutze eine template für das seitenlayout, setze den seitentitel auf "blog"
     und benutze das blog-plugin als inhalt -->
<& template src="/templates/layout.template" title="blog" &>
	<$ content $>
		<& blog / &>
	<$ / $>
<& / &>

Vorhandene Funktionen/Anwendungen

Derzeit werden unter anderem folgende Funktionen abgedeckt:

Man kann blitzschnell dynamische Websites bauen und hat dank der konsequenten Nutzung von Templates volle Kontrolle über das Aussehen.

Die Tags/Plugin können ineinander verschachtelt und so kombiniert werden, was das System sehr mächtig und dennoch einfach zu benutzen macht.

Hauptziele dieses Frameworks

Technische Details / Voraussetzungen

Das Framework basiert auf Perl, mod_perl, Apache, MySQL und einigen Perl-Modulen. Es existiert aber auch ein (leider etwas vernachlässigter aber grundsätzlich funktionstüchtiger) CGI-Handler. Es läuft auf Windows und Linux und ist auch auf andere Datenbanken anpassbar.

Lizenz

Das Framework wird unter derselben Lizenz veröffentlich, unter der auch Perl veröffentlich wird und ist somit Open Source.

Weitere Informationen

Dokumentation: Die (englische) Dokumentation des Frameworks. Enthält die aggregierte Dokumentation sowie die Dokumentation der einzelnen Module.

Download / Installation

Das Paket kann man ganz einfach über die CPAN shell installieren:

cpan Konstrukt

bzw.

perl -MCPAN -e shell
cpan> install Konstrukt

Alternativ kann man es auch direkt im CPAN finden und anschauen/herunterladen.