Heim  >  Artikel  >  PHP-Framework  >  Was sind die Nachteile von Laravel?

Was sind die Nachteile von Laravel?

青灯夜游
青灯夜游Original
2022-02-14 13:58:284645Durchsuche

Die Nachteile des Laravel-Frameworks sind: 1. Das komponentenbasierte Framework ist relativ aufgebläht; 2. Das Framework ist groß und weniger effizient als kleine Frameworks wie yaf. 3. Das Framework ist komplex und langsamer zu starten als gewöhnlich Frameworks und die Lernkosten sind hoch.

Was sind die Nachteile von Laravel?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Laravel 6-Version, Dell G3-Computer.

Laravel-Framework

Laravel ist ein einfaches und elegantes PHP-Webentwicklungs-Framework (PHP Web Framework). Es kann Sie von unordentlichen Codes wie Nudeln befreien; es kann Ihnen helfen, eine perfekte Netzwerk-APP zu erstellen, und jede Codezeile kann prägnant und ausdrucksstark sein.

Atvantage

  • Rich Dokumentation

  • a eine große Anzahl von Open-Source-Bibliotheken von Drittanbietern. um illegale Anfragen zu vermeiden

  • Freundlicher Fehlerbehandlungsmechanismus

  • Unterstützt das Composer-Paketverwaltungstool

  • Es integriert die relativ neuen Funktionen von PHP und verschiedene Designmuster.

  • Nachteile:
  • Basierend auf einem komponentenbasierten Framework ist es relativ aufgebläht

Die Leistung ist geringer als bei kleinen Frameworks wie yaf

  • Es ist komplizierter und langsamer Einstieg als gewöhnliche Frameworks. Hohe Kosten

  • Vorteile der Verwendung des Laravel-Frameworks
  • Wenn das oben Genannte interessant genug klingt und Sie dazu ermutigt, bei der Entwicklung Ihrer nächsten Anwendung ein Framework zu verwenden, dann lassen Sie mich etwas über Laravel erzählen Framework Einige Vorteile gegenüber anderen PHP-Frameworks. Diese Vorteile machen das Laravel-Framework zweifellos zu einem der Top-Anwärter auf das beste PHP-Framework.

1. Sofort einsatzbereite Benutzerauthentifizierung Das Laravel-Framework bietet sofort einsatzbereite Benutzerauthentifizierungsfunktionen. Jede moderne Webanwendung erfordert eine Benutzerauthentifizierung, und mit dem Laravel-Framework müssen Sie kaum etwas tun, um sie einzurichten. Wenn Sie die Benutzerauthentifizierung einrichten, erstellt das Laravel-Framework alle wichtigen Komponenten wie das Benutzermodell, Registrierungs- und Anmeldecontroller sowie entsprechende Ansichten. Und in Zukunft wird es sehr einfach sein, diese Komponenten basierend auf der von der Anwendung benötigten Geschäftslogik um neu hinzugefügte Funktionen zu erweitern.

Darüber hinaus stellt das Laravel-Framework auch das Socialite-Paket (Erweiterungspaket) bereit, das es Ihrer Anwendung ermöglicht, Benutzer über verschiedene soziale Netzwerke (wie Facebook, Google Plus und Twitter) zu authentifizieren. Damit es funktioniert, ist nur eine minimale Konfiguration erforderlich.

2. Konvention vor Konfiguration (auch Programmierung nach Konvention genannt)

Das Laravel-Framework übernimmt auch den Ansatz „Konvention vor Konfiguration“. Dies bedeutet im Wesentlichen, dass bei Einhaltung der Namenskonventionen für die verschiedenen Komponenten nur ein geringer Konfigurationsaufwand zu befürchten ist. Wenn Sie sich an die Namenskonvention halten, kümmert sich das Laravel-Framework selbst um viele Details auf niedriger Ebene für Sie und alles wird auf magische Weise funktionieren. Wenn Sie bisher mit traditionellem PHP programmiert haben, könnte sich dies zunächst überwältigend anfühlen. Aber wenn Sie einmal einen Eindruck davon bekommen haben, werden Sie nie mehr zurückblicken wollen.

3. Einfach zu verwendende E-Mail-Funktionalität

Eine moderne Anwendung ohne E-Mail-Funktionalität ist kaum vorstellbar. Die Implementierung der E-Mail-Versandfunktion ist mit dem Laravel-Framework sehr einfach. Zusätzlich zur SMTP- und PHP-Mail-Funktionalität unterstützt das Laravel-Framework auch eine Vielzahl von E-Mail-Benachrichtigungsdiensten wie Mailgun, Mandrill, SparkPost, Amazon SES, SendMail und mehr. Mit diesen Diensten können Sie schnell mit dem Versenden von E-Mails über lokale oder cloudbasierte Dienste beginnen. Sie können Nexmo auch zum Versenden von Benachrichtigungen über Slack und SMS verwenden. Alle diese Dienste sind im Laravel-Framework sofort verfügbar.

Das Laravel-Framework unterstützt auch Markdown in E-Mail-Vorlagen (Anmerkung des Übersetzers: Markdown ist ein Text-zu-HTML-Konvertierungstool), mit dem Sie E-Mails in sehr kurzer Zeit erstellen können.

4.Artisan Command

Für mich persönlich ist die Artisan-Befehlszeile die prägnanteste und nützlichste Funktion, die das Laravel-Framework bietet. Artisan ist eine Befehlszeilenschnittstelle für das Laravel-Framework, die Entwicklern hilft, viele Aufgaben über die Befehlszeile selbst zu automatisieren. Artisan-Befehle können innerhalb der Anwendung selbst verwendet werden, oder Entwickler können zusätzliche Artisan-Befehle erstellen.

Für jede allgemeine Aufgabe, die Ihnen einfällt, können Sie einen entsprechenden Artisan-Befehl finden. Erstellen Sie beispielsweise ein Modell, einen Controller, einen Datenbank-Seed, eine Migration der Datenbank usw. Die Liste ist endlos. Ich sage, es ist „prägnant“, weil Sie nur den Befehl übergeben müssen und das Laravel-Framework den Rest erledigt.

5. Testautomatisierung von „Test Driven Development“

Das Laravel-Framework unterstützt PHPUnit, wodurch es sehr einfach ist, PHP-Anwendungen mit dem Modell der „testgetriebenen Entwicklung“ zu testen. Es wird einfacher, Unit-Tests für Ihre Anwendung zu schreiben und sicherzustellen, dass die Dinge so funktionieren, wie Sie es möchten.

6. Saubere Abhängigkeitsinjektion

Sobald Sie anfangen, mit dem Laravel-Framework zu arbeiten, werden Sie schnell feststellen, dass das Laravel-Framework von Ruby on Rails und funktionaleren Sprachen und nicht von Java inspiriert ist. Dies lässt sich leicht an der Art und Weise erkennen, wie das Laravel-Framework die Abhängigkeitsinjektion handhabt. Obwohl die Implementierung der Abhängigkeitsinjektion komplexe Muster erfordern kann, verfolgt das Laravel-Framework den entgegengesetzten Ansatz und bietet eine einfache Möglichkeit, globale Hilfsfunktionen zu erstellen. Mithilfe globaler Funktionen und statischer Faade-Proxys können wir die Abhängigkeitsinjektion bei Bedarf problemlos implementieren.

7. Trennung von Geschäftslogik und Anzeigecode

Laravel folgt dem Model-View-Controller (MVC)-Architekturmuster, um Geschäftslogik von Ansichten zu trennen. Dieser Ansatz hat viele Vorteile. Um seine Vorteile wirklich zu verstehen, müssen Sie verstehen, was das MVC-Muster ist und ob Ihre Anwendung eine solche Architektur erfordert.

8. Eloquente ORM-Implementierung (Object Relational Mapping)

Eloquent ist die von Laravel bereitgestellte ORM-Implementierung (Object Relational Mapping). Weitere Informationen finden Sie unter dem Link in Wikipedia (https://en.wikipedia.org/wiki/Object-relational_mapping). Eloquent macht es sehr einfach, Daten aus der Datenbank abzurufen. Außerdem wird es einfacher, Beziehungen zwischen Tabellen zu erstellen und Daten aus diesen Tabellen abzurufen. Eloquent ermöglicht Ihnen außerdem das Erstellen verschiedener Verbindungen zu Ihren Tabellen und bietet viele Hilfsfunktionen, die die Interaktion mit der Datenbank sehr einfach machen. Sie müssen selten SQL-Abfragen oder -Funktionen schreiben. Aufgrund des Eloquent ORM kann das Laravel-Framework sofort einsatzbereite Unterstützung für die folgenden Datenbanken bieten:

MySQLPostgreSQLSQLiteSQL Server Sie haben völlig Recht, das bedeutet im Grunde, dass Sie dies nicht tun müssen, solange Sie Eloquent verwenden Sorgen Sie sich um die Kompatibilität der oben genannten Datenbanken. Es ist auch sehr einfach, von einer Datenbank zur anderen zu wechseln. Versuchen Sie nun, sich die Skalierbarkeit vorzustellen, die Ihre Anwendung dadurch erhält. Lassen Sie mich dies anhand eines Beispiels erläutern. Nehmen wir an, Sie haben eine Anwendung, die mit einer kleinen Benutzerbasis beginnt. Da die Anzahl der Benutzer gering ist und die Anwendung noch in den Kinderschuhen steckt, entscheiden Sie sich für MySQL als Datenbank. Nach einiger Zeit wächst die Anzahl der Benutzer Ihrer Anwendung auf ein beträchtliches Niveau und Sie müssen möglicherweise auf eine SQL Server-Datenbank umsteigen. Durch die Verwendung von Eloquent ist dieser Wechsel jetzt so einfach wie das Ändern spezifischer Konfigurationsdetails im Laravel-Framework.

9. Warteschlange und Planer

Bei der Entwicklung von Anwendungen gibt es normalerweise einige zeitaufwändige Aufgaben. Diese Aufgaben müssen auf einen späteren Zeitpunkt verschoben werden, damit sie den Benutzerfluss nicht blockieren. Ein perfektes Beispiel für diese Art von Aufgabe könnte die Erstellung eines PDF-Berichts sein, der Benutzeranfragen zum Erstellen einer CSV-Datei zählt. Der Warteschlangendienst des Laravel-Frameworks bietet eine einheitliche API zum Verschieben dieser Aufgaben auf einen späteren Zeitpunkt in der Anwendung.

Apropos Befehlsplaner des Laravel-Frameworks: Er ist der perfekte Ersatz für diese umständlichen geplanten Aufgaben (Cronjob). Oftmals müssen Entwickler geplante Jobs für bestimmte Aufgaben einrichten. Ein perfektes Beispiel für eine solche Aufgabe besteht darin, allen Abonnenten einen wöchentlichen Newsletter (Newsletter) zu senden, den sie abonniert haben. Um diesen Cron-Job einzurichten, muss sich der Entwickler über SSH-Befehle am Server anmelden und den Cron-Job auf Betriebssystemebene einrichten. Dies kann mit der Zeit zu einem Problem werden, da diese Cron-Jobs nicht Teil der Verwaltung von GIT und anderen Versionskontrollsystemen sein können. Der Befehlsplaner des Laravel-Frameworks bietet jedoch eine saubere API mit integrierten Funktionen zum Planen einer Vielzahl von Aufgaben. Auf diese Weise müssen Sie keine SSH-Befehle verwenden, um sich am Terminal des Servers anzumelden, und alle diese geplanten Jobs werden Teil des Codes und sind im Umfang des Versionskontrollsystems enthalten.

10. Einfaches Routing

Die Art und Weise, wie das Laravel-Framework das Routing handhabt, ist einfach und intuitiv. Es gibt eine einzige web.php-Datei, die das gesamte Webrouting verwaltet. Wenn bestimmte Routen eine gemeinsame Middleware erfordern, können diese einfach in Laravel gruppiert werden.

Ein perfekter Anwendungsfall für das Routing sind einige Seiten in Ihrer Anwendung, die eine Benutzerauthentifizierung erfordern, bevor der Benutzer sie anzeigen kann. Das Laravel-Framework kann alle diese Seiten gruppieren und sie werden von der Auth-Middleware überprüft, um sicherzustellen, dass nur am System angemeldete Benutzer diese Seiten anzeigen können. Das Laravel-Framework bietet außerdem eine prägnante Routenmodellbindung, bei der Modelle an Routen gebunden werden können. Mit dieser Hilfe kann die Ansicht direkt von der Route selbst zurückgegeben werden, ohne dass überhaupt ein Zugriff auf den Controller erforderlich ist.

11. Composer verwaltet Abhängigkeiten

Das Laravel-Framework verwendet Composer zum Verwalten von Abhängigkeiten und zum automatischen Laden. Composer hilft Ihnen bei der Installation von Laravel-Erweiterungspaketen, was die Abhängigkeitsverwaltung zum Kinderspiel macht. Sie können jederzeit die Datei package.json überprüfen, um alle Abhängigkeiten zu sehen, die Ihre Anwendung verwendet. Mit Composer können Sie außerdem Abhängigkeiten mit einem einzigen Composer-Befehl aktualisieren.

12.Blade-Template-Engine

Blade ist die Template-Engine des Laravel-Frameworks. Blade verschafft Ihnen einen Vorsprung bei der Trennung von Ansichten und Geschäftslogik. Dadurch bleibt Ihr Ansichtscode sehr sauber. Sobald Sie ein klares Verständnis des MVC-Architekturmusters und seiner Implementierung durch Laravel haben, werden Sie die Bedeutung der Blade-Template-Engine besser verstehen. Blade bietet auch Vorlagenvererbung, sodass Sie Ihre zuletzt verwendete Vorlage in Teile aufteilen und andere Ansichtsdateien diese Teile erben lassen können. Mit Hilfe von Blade können Sie logisch kleinere Teile einer Ansicht erstellen, die dann zu einer Gesamtansicht zusammengefügt werden können.

13. Dokumentation

Das ist eine Art Grauzone. Als ich anfing, das Laravel-Framework zu verwenden, hatte ich wirklich Probleme, Dokumentation zu finden. Es war alles nicht dokumentiert, aber irgendwann bemerkte ich plötzlich, dass etwas auf magische Weise zu funktionieren begann, und da fingen alle an, sich an die Namenskonventionen zu halten. Mittlerweile gibt es API-Dokumente, die alle im Laravel-Framework deklarierten Klassen und Methoden auflisten. Sobald Sie den Dreh raus haben und wissen, wie Sie die Laravel-Dokumentation zu Ihrem Vorteil nutzen können, garantiere ich Ihnen, dass Sie keine Beschwerden mehr haben werden.

14. Aktive Community

Laravel hat eine aktive Community. Wenn Sie auf ein Problem stoßen, können Sie suchen und Sie werden mit Sicherheit viele StackOverflow-Beiträge für Ihr Problem finden. Neben einer aktiven Community auf StackOverflow gibt es auch ein Diskussionsforum namens Laracast. Sie können sich kostenlos anmelden, um Teil des Laracast-Forums und der Laracast-Community zu werden, die derzeit sehr aktiv ist.

Ich denke, diese Vorteile reichen aus, um Sie für das Laravel-Framework zu begeistern. Obwohl es definitiv übertrieben ist, es als perfekt zu bezeichnen, kann ich definitiv sagen, dass das Laravel-Framework definitiv eines der besten PHP-Frameworks ist.

Verwandte Empfehlungen: Die neuesten fünf Laravel-Video-Tutorials

Das obige ist der detaillierte Inhalt vonWas sind die Nachteile von Laravel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn