Laravel – Features des beliebtesten PHP Frameworks 2014

Standard

Laut einer Umfrage von Bruno Skvorc ist Laravel das beliebteste PHP Framework 2014. Anlaß genug sich einmal genauer mit dem von Taylor Otwell entwickelten Framework auseinanderzusetzen.

Ich habe schon 2012 durch einen Kollegen von Laravel erfahren und einige kleinere Projekte mit Laravel 3 umgesetzt. Features, Syntax und die Schnelligkeit, mit der man PHP Apps mit Laravel entwickeln kann, haben mich ab der ersten Minute begeistert. Seitdem setze ich Laravel in der aktuellen Version 4 für verschiedene Projekte in meiner täglichen Arbeit ein.

Warum ist Laravel so beliebt? Die Features des Frameworks.

Eloquent ORM

Das Eloquent ORM ist einer der Hauptgründe für die Popularität des Frameworks. Eloquent ermöglicht es auf syntaktisch bisher ungewohnt einfache Art uns Weise mit der zugrundeliegenden Datenbank zu kommunizieren. Eloquent unterstützt standardmäßig MySQL, Postgres, SQLServer und SQLite.

Laravel Syntax

Die Laravel Syntax ist so einfach und „sprechend“, dass auch Personen, die mit Programmierung nichts zu tun haben, verstehen, was der Quellcode bedeutet. Auf Kommentare kann häufig verzichtet werden, da die Bezeichnung von Methoden, Klassen und Variablen deren Funktion und Zweck selbst erklären.

Diese Syntax erlaubt es Einsteigern sich sehr schnell mit Laravel anzufreunden, aber kann auch leicht über die Komplexität und Flexibilität, die Laravel unter der Haube bietet, hinwegtäuschen.

Restful Routing

Laravel basiert auf einem sehr einfach zu bedienenden Routing System, welches den Start eines neuen Projekts beschleunigt, zugleich aber flexibel genug ist, auch komplexe URL Strukturen schnell und übersichtlich umzusetzen.

Composer – PHP Dependency Managment

Composer vereinfacht das Management von Third-Party-Paketen und ist seit einigen Jahren kaum mehr aus der PHP Entwicklung wegzudenken. Kinderleicht können Pakete anderer Entwickler installiert und verwaltet werden.

So lässt sich die eigene Applikation einfach um zusätzliche Features und Tools erweitern, ohne dass der Entwickler das Rad jedes Mal neu erfinden oder sich um die Aktualität der jeweiligen Pakete kümmern muss. Zudem lassen sich einfach eigene Pakete entwickeln, die auf dem gleichen Weg in verschiedenen Webprojekten verwendet werden können.

Datenbank Versionskontrolle – Migrationen

Unter Datenbank Migrationen versteht man die Versionskontrolle des der Applikation zugrunde liegenden Datenbankschemas. Diese aus Rails bekannte Methode wurde in Laravel integriert, so dass Änderungen am Datenbankschema (z.B. das Hinzufügen oder Umbenennen einer Spalte) nicht mehr kompliziert den anderen am Projekt arbeitenden Entwicklern mitgeteilt werden müssen.

Laravel macht die Verwaltung dieser Änderungen zum Kinderspiel. Um die eigene lokale Datenbank auf den aktuellen Stand zu bringen ist ein einziger Befehl erforderlich.

Tests

Große Wabapplikationen werden schnell unüberichtlich und sind schwer zu warten. Unit – und Integration -Tests helfen uns dabei den Überblick zu bewahren und die Funktionalität der gesamtem App sicherzustellen.

Bei der Entwicklung von Laravel wurde großer Wert darauf gelegt, dass alles in Laravel testbar ist und das Framework dem User keine Steine in den Weg legt. Zudem bringt Laravel einige eigene Testmethoden für PHPUnit mit, die das Testen von Laravel Applikationen vereinfachen.

Hilfsbereite, freundliche und sehr aktive Community

Schon recht früh habe ich festgestellt, dass die Laravel Community sehr hilfsbereit, freundlich und aufgeschlossen gegenüber neuen Entwicklern ist. Ob absoluter Neuling oder erfahrener Webentwickler… alle fühlen sich in der weiter stark wachsenden Community wohl.

Hilfe und Support findet man in den einschlägigen Foren oder im Laravel IRC Chat. Dort trifft man auch nicht selten auf den Urheber des Frameworks Taylor Otwell und viele bekannte Gesichter aus der Community und kann direkt mit ihnen neue Ideen oder Vorgehensweisen diskutieren. Zudem finden mehrmals im Jahr offline Events (zB.: Laracon) rund um den Globus statt.

Gute Dokumentation

Ein Framework kann noch so gut sein, wenn niemand weiß, welche Features und Funktionen es bietet und wie diese genutzt werden können. Die Laravel Dokumentation ist übersichtlich, sehr verständlich geschrieben und nahezu vollständig.

Nichtsdestotrotz lohnt sich ein tieferer Blick in den Quellcode, um die Funktionsweise des Frameworks vollends zu verstehen und zu verinnerlichen. Der Code des Frameworks ist sehr durchdacht, gut strukturiert und ausführlich kommentiert, so dass man sich auch dort sehr schnell zurecht findet und die gesuchten Informationen findet.

Flexibilität

Laravel ist extrem flexibel. Alle Komponenten lassen sich gegen eigene Implementierungen ersetzen. So lässt sich bspw. Eloquent relativ einfach durch andere ORMs (bspw. Doctrine) austauschen oder als selbstständige Komponente in nicht auf Laravel basierten PHP Applikationen nutzen.

Zudem macht das Framework den Entwicklern so gut wie keine Vorschriften, wie etwas umgesetzt oder strukturiert werden soll. Man kann also eigene Ideen, Strukturen und Vorstellungen sehr gut einbringen und die Struktur der eigenen Applikation den jeweiligen Projektansprüchen anpassen, ohne gegen starre Framework Konventionen zu verstoßen.

Template Engine: Blade

PHP Template Engines gibt es wie Sand am Meer. Smarty, Twig oder Dwoo um nur einige zu nennen. Auch Laravel bringt seine eigene (austauschbare) Template Engine namens Blade mit.

Blade ist eine light-weight Template Engine, die nur die wesentlichen Funktionen wie Kontrollstrukturen und Vererbung unterstützt und den Fokus auf Performance und Schnelligkeit legt. Das Arbeiten mit Blade ist Laravel typisch sehr einfach und fast selbsterklärend.

Fazit:

Laravel ist ein modernes, flexibles und einsteigerfreundliches PHP Framework und somit für jeden PHP Entwickler absolut empfehlenswert und mindestens einen Blick wert.

In den kommenden Posts werden wir die einzelnen Features und Funktionen genauer beleuchten und mehrere Beispiel Applikationen entwickeln.

Ein Gedanke zu “Laravel – Features des beliebtesten PHP Frameworks 2014

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert