Laravel

Ein Framework nimmt Entwicklern die immer gleichen Aufgaben ab, von der Anmeldung bis zur Datenbankabfrage. Laravel tut das für PHP und gibt dabei eine Struktur vor, an die sich ein ganzes Team halten kann.
Ein Entwickler sitzt auf einem Skateboard und benutzt an seinem Laptop Laravel für die Erstellung einer responsive Website.
© Kzenon

Aufbau von Laravel

Laravel ist ein quelloffenes Framework für die Programmiersprache PHP, das 2011 von Taylor Otwell veröffentlicht wurde. Es folgt dem Muster Model-View-Controller und trennt damit Daten, Darstellung und Ablauflogik voneinander. Mitgeliefert werden fertige Bausteine für Datenbankzugriff, Routing, Anmeldung und Zwischenspeicherung, die so nicht in jedem Projekt neu entstehen müssen.

Quelloffen heißt dabei, dass der Quelltext frei einsehbar ist und ohne Lizenzkosten genutzt werden darf. Getragen wird die Weiterentwicklung von einer Gemeinschaft aus Beitragenden und einem festen Kernteam.

Die wichtigsten Bausteine

Der Datenbankzugriff läuft über Eloquent, eine Schicht, die Tabellen als Objekte behandelt und ihre Beziehungen untereinander abbildet. Für die Ausgabe sorgt die Vorlagensprache Blade, die Wiederholungen im Frontend vermeidet und Eingaben automatisch maskiert. Das Kommandozeilenwerkzeug Artisan erzeugt Gerüstcode, führt Datenbankmigrationen aus und startet Hintergrundprozesse. Zusätzliche Pakete kommen über Composer hinzu, den Paketmanager von PHP, der zugleich die Versionsstände aller Abhängigkeiten festhält. Genau diese Vorgaben machen den Unterschied zu freiem PHP-Code, weil sie Ablage, Benennung und Zuständigkeiten festlegen und damit auch für spätere Bearbeitende nachvollziehbar bleiben. Dieselbe Frage nach Struktur stellt sich in der PHP-Entwicklung auch ohne Framework, nur beantwortet sie dann jedes Team für sich.

Typische Einsatzgebiete

Als Webframework deckt es den serverseitigen Teil einer Anwendung ab. Typisch sind datengetriebene Portale mit Benutzerverwaltung, Rollen- und Rechtekonzepten, dazu Schnittstellen für andere Systeme sowie Anwendungen, die im Betrieb wachsen sollen und deren Datenmodell sich dabei verändert. Auch die schrittweise Ablösung gewachsener PHP-Anwendungen läuft häufig über dieses Webframework, weil sich einzelne Bereiche nacheinander überführen lassen, statt alles auf einmal zu ersetzen. Der alte Bestand bleibt dabei erreichbar, während neue Teile schon unter der neuen Struktur laufen. Ob das gelingt, entscheidet sich an der Datenhaltung, weil eine Laravel-Entwicklung im Bestand auf demselben Datenmodell aufsetzen muss wie der alte Code.

Abgrenzung und Grenzen

Es ist weder eine Programmiersprache noch ein fertiges Redaktionssystem, sondern ein Gerüst, in das eigener Code eingesetzt wird. Eine Website ohne eigene Logik lässt sich damit zwar bauen, der Aufwand steht dann aber in keinem Verhältnis zum Ergebnis. Hinzu kommt die Einarbeitung, denn das Framework bringt eigene Begriffe und Abläufe mit. Und weil neue Hauptversionen in kurzen Abständen erscheinen, gehört das Nachziehen von Versionen zum Betrieb dazu. Ohne diese Pflege veraltet eine Anwendung, obwohl sie technisch weiterläuft, und der Abstand zur aktuellen Fassung wächst mit jedem übersprungenen Sprung.

Aktuelle Themen