Laravel vs. Symfony: was sind die Unterschiede?
Unter den PHP Frameworks ist Symfony eines der beliebtesten.
Auch Laravel, im Beitrag mit LV abgekürzt, ist populär.
Im Beitrag werden die beiden Technologien miteinander verglichen.
Einführung
Wer eine Webanwendung erstellen will, kann heutzutage unter einer vielzahl an Technologien auswählen.
In einem Grossteil der Projekte kommt jedoch PHP zum Einsatz. Um die Arbeit zu erleichtern, schneller zu entwickeln und weniger Fehler zu machen, kann man auch ein Framework nutzen.
Hier hat die Technologie eine Auswahl an Möglichkeiten:
- CakePHP/ CodeIgniter/ YII: Diese drei PHP Technologien haben nicht wirklich etwas miteinander in der Popularität zu tun. Es sind jedoch Frameworks die heutzutage nicht mehr so oft zum Einsatz kommen. Damit lassen sich jedoch einfachere Webprojekte umsetzen. Besonders in Asien kommt es noch zum Einsatz.
- Zend: Zend war lange Zeit die populärste PHP Technologie. Besonders Agenturen, aber auch Konzerne setzten und setzen es ein, um Enterprise-Level Anwendungen zu schreiben. Auch heute noch wird es in vielen Legacy Systemen verwendet. Bekannt ist auch das darauf basierende Onlineshop System Magento, welches in vielen Webshops, von klein bis gross verwendet wird.
- Symfony: Neben Zend war auch Symfony (im Beitrag auch mit SF abgekürzt) sehr populär. Es hat ähnliche Eigenschaften wie Zend. Auch SF wird im Enteprise Bereich verwendet. KMU und Konzerne setzen darauf. Oder eben Internetagenturen, welche diese Unternehmen untertützen. Beide, SF und auch Zend werden nicht selten genutzt um Onlineshops zu entwickeln, beziehungsweise e-Commerce zu betreiben.
- Laravel: LV hat in den letzten Jahren extremst an Popularität gewonnen. Zum Teil sind viele Symfony und Zend Entwickler zu Laravel gewechselt. Auch weil es einfacher zu erlernen ist. Auch Laien tuen es sich einfacher darin einzuarbeiten. Besonders Zend Programmierer machen den Schritt zu LV, sobald sie die ersten Versuche darin unternehmen.
In diesem Beitrag soll es jedoch mehr um SF und LV gehen.
Vergleich der beiden Technologien
Alter
Symfony gibt es bereits seit 2005. Damit könnte man behaupten, dass SF das robusterer PHP Framework. Da man bereits weiss, was mit dieser Technlogie möglich ist und was nicht. Da es bereits seit vielen Jahren im Einsatz ist.
Bei Laravel sieht es ein wenig anders aus. LV gibt es “erst” seit 2011. Und ist somit einige Jahre später auf den Markt gekommen.
IT Fachkräfte
Entsprechend unterschiedlich war lange Zeit daher auch das Fachkräfte-Aufkommen in den jeweiligen Frameworks. In SF liesen sich über längere Zeit, einfacher Webentwickler finden, als das für LV der Fall war. Mittlerweise hat sich dies jedoch geändert. Es ist im Grunde genommen einfacher geworden, einen Laravel Programmierer zu finden.
Schwierigkeitsgrad
Mit LV lassen sich komplexe Webanwendungen programmieren. Das Gleiche trifft auch auf SF zu. Jedoch kann man sagen, dass die Lernkurve bei Symfony höher ist. Das bedeutet, ein Entwickler wird länger dafür brauchen, sich in diese Technologie einzuarbeiten.
Bei Laravel sieht das bereits anders aus. Internetagenturen und IT Dienstleister schätzen es, das ein Junior Programmierer sich bereits in wenigen Wochen, oder bis zu 3 Monaten, darin einarbeiten kann. Klar ist auch: Auch um in LV gute Webanwendungen zu schreiben, braucht es einige Jahre Erfahrung. Jedoch die Basics zu erlernen geht schneller bei LV, als das bei SF der Fall wäre.
Community
Lange Zeit war die Gemeinschaft um SF relativ viel Grösser als bei Laravel. Das hat sich auch bereits geändert.
Es lassen sich Online heutzutage viele Foren, Q&A Plattformen, Video-Tutorials und ähnliches finden, welches für einen Einsteiger hilfreich sein kann.
Komplexität des Frameworks
Symfony hat nicht nur eine höhere Lernkurve. Es lassen sich damit auch komplexere Anwendungen schreiben.
Bei Laravel ist das auch der Fall. Jedoch wird es von einigen Entwicklern als “WordPress unter den PHP Frameworks” bezeichnet. Da man damit relativ schnell entwickeln kann. Jedoch muss man den Vergleich zu WordPress (kurz WP) mit Vorsicht geniessen, da man mit LV, trotz der vielen “fertigen” Komponenten, wie zum Beispiel Formulare, sehr komplexe Anwendungen schreiben kann. Was bei WP nicht unbedingt der Fall ist.
Jedoch könnte ein Profi im Bereich WP, auch sehr komplexe Anwendungen erstellen, in dem zum Beispiel individuell programmierte Plugins erstellt werden, welche die Core Komponenten erweitern.
Bei WP, aber auch bei Laravel kommt es also auf die Expertise des jeweiligen Experten an.
Legacy Systeme
In der Realität setzen immer noch viele KMU’s (kleine und mittelständische Unternehmen), aber auch Konzerne seit vielen Jahren auf Symfony oder auf Zend.
Diese Systeme werden seit vielen Jahren weiterentwickelt. Und viele Unternehmen sind daher nicht bereit das Risiko einzugehen, auf Laravel zu wechseln. Obwohl es eventuell der bessere Ansatz wäre.
Daher findet man immer noch viele gute Projekte, die auf SF basieren. Wie bereits erwähnt, gehören dazu nicht selten grosse Ecommerce Systeme.
Was kann man damit entwickeln?
Mit LV, aber auch mit SF, lassen sich unterschiedlichste Webanwendungen erstellen.
Der Phantasie sind hier keine Grenzen gesetzt.
Hier ein paar Möglichkeiten:
- Content Management System (CMS): Mit beiden Technologien lassen sich CMS programmieren. Einige Agenturen entwickeln ihre eigenen individuell erstellten CMS. Andere setzen auf LV basierende wie October CMS. Oder SF basierende oder Komponenten enthaltende wie TYPO3, Joomla oder Contao.
- Onlineshops: LV wird nicht selten in eCommerce Anwendungen verwendet. Dabei wird das Framework selbst genutzt. Bei SF kann man auch auf diesem Framework basierende e-Commerce Systeme setzen. Shopware, PrestaShop oder Spryker basieren beispielsweise darauf. Interessant zu sehen ist auch, dass das populärste Shopsystem Shopware auf Symfony basiert.
- Webanwendungen: Auch generelle Webanwendungen lassen sich mit diesen Technologien erstellen. Wie bereits erwähnt, werden viele Legacy Anwendungen auf SF programmiert. Während neuere Projekte direkt in LV gestartet werden.
Fazit
Laravel ist eher neu. Daher kann man auch sehen, dass es eher weniger, bekannte Web-Systeme gibt, die darauf basieren. Es ist jedoch beliebt bei Agenturen und auch Entwicklern die damit arbeiten.
Da es sich relativ schnell erlernen lässt. Und auch erfahrenen Profils in der PHP Programmierung die Möglichkeit gibt, später sehr komplexe Anwendungen zu schreiben.
Symfony wird dagegen in vielen alten und bekannten Systemen wie Magento und Shopware genutzt. Auch in vielen Webanwendungen in mittelständischen Unternehmen und grossen Konzernen kommt es zum Einsatz.
Es macht also Sinn, sich mit beiden Technologien zu beschäftigen. Da beide Ihre Vorteile und Nachteile haben und ihre eigenen Stärken mitbringen.
Was sind Ihre Erfahrungen?
Interessante Artikel:
Laravel, Zend, Symfony: das nutzt Netzdenke
Mehr Informationen zum Symfony Framework
Bilder: Canva
Der Autor: Sascha Thattil arbeitet bei YUHIRO und hilft Unternehmern und Unternehmen beim einfachen Aufbau von Programmier-Teams in Indien. YUHIRO ist ein deutsch-indisches Unternehmen welches IT Firmen, Agenturen und IT Abteilungen Softwareentwickler bereitstellt.
Schreibe einen Kommentar