Laravel – Die umfassende Einführung
eBook - ePub

Laravel – Die umfassende Einführung

Das Framework für moderne PHP-Entwicklung

Matt Stauffer, Jens Olaf Koch

Condividi libro
  1. 552 pagine
  2. German
  3. ePUB (disponibile sull'app)
  4. Disponibile su iOS e Android
eBook - ePub

Laravel – Die umfassende Einführung

Das Framework für moderne PHP-Entwicklung

Matt Stauffer, Jens Olaf Koch

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

Was Laravel von anderen PHP-Web-Frameworks unterscheidet? Es ist schnell, strukturiert, elegant und macht einfach Spaß. Dieses Framework für die schnelle Anwendungsentwicklung bietet ein ganzes Ökosystem an Tools, sodass Sie schon nach kurzer Zeit in der Lage sind, neue Websites und Anwendungen mit sauberem, lesbarem Code zu erstellen. Dieses Buch bietet eine umfassende Einführung in eines der derzeit beliebtesten Web-Frameworks - inklusive erprobtem Praxiswissen und tiefergehender Einblicke in die zugrunde liegenden Konzepte. Es deckt die Version Laravel 6 (mit Long Term Support) ab.Matt Stauffer, ein führender Entwickler der Laravel-Community, liefert einen Gesamtüberblick und eine Vielzahl konkreter Beispiele, sodass PHP-Web-Entwickler sofort produktiv mit dem Framework arbeiten können. Diese Aufgabe behandelt auch Laravel Dusk und Horizon und bietet Informationen über Community-Ressourcen sowie Pakete, die nicht zum Kern von Laravel gehören.Machen Sie sich vertraut mit: - Blade, Laravels mächtiger Templating-Engine- dem Sammeln, Validieren, Normalisieren und Filtern von benutzerdefinierten Daten- Eloquent, dem objektrelationalen Mapper für die Arbeit mit Anwendungsdatenbanken- dem Testen Ihres Codes mit PHPUnit, Mockery und Dusk- dem Entwurf von JSON- und RESTful-APIs- dem Zugriff auf Dateisystem, Sitzungen, Cookies, Caches und Suchfunktionen- dem Einsatz von Queues, Jobs, Events und Notifications- dem Einbinden von Frontend-Komponenten wie Vue.js, ReactVue.js oder React

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Laravel – Die umfassende Einführung è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Laravel – Die umfassende Einführung di Matt Stauffer, Jens Olaf Koch in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Computer Science e Programming in PHP. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Editore
O'Reilly
Anno
2020
ISBN
9783960103721

KAPITEL 1

Warum Laravel?

In den frühen Tagen des dynamischen World Wide Web sah das Schreiben einer Anwendung ganz anders aus als heute. Die Entwickler waren damals nicht nur dafür verantwortlich, den Code für die jeweils spezielle Anwendungslogik zu schreiben, sondern auch für all jene Komponenten, die immer wieder für Websites benötigt werden: für die Authentifizierung von Benutzern, die Validierung von Eingaben, Datenbankzugriffe, die Erstellung von Vorlagen und vieles mehr.
Heutzutage gibt es Dutzende von Frameworks für die Anwendungsentwicklung und Tausende von Komponenten und Bibliotheken, die allen Programmierern leicht zugänglich sind. Es ist gängige Rede unter Entwicklern, dass, kaum habe man ein Framework gelernt, es bereits drei neuere (und angeblich bessere) Frameworks gebe, die es gerne ersetzen möchten.
»Weil er halt existiert«, mag eine sinnvolle Rechtfertigung dafür sein, einen Berg zu besteigen. Aber es gibt bessere Gründe als »Weil es halt existiert«, um sich für ein bestimmtes Framework zu entscheiden – oder überhaupt eines zu verwenden. Stellen wir uns also die berechtigte Frage: Wozu sind Frameworks eigentlich gut? Genauer gesagt: Wozu ist Laravel gut?

Warum ein Framework verwenden?

Es ist leicht nachzuvollziehen, warum es hilfreich ist, die einzelnen Komponenten und Pakete zu verwenden, die es für PHP-Entwickler gibt. Bei Packages ist jemand anderes für die Entwicklung und Wartung eines isolierten Stücks Programmcode verantwortlich, mit dem eine bestimmte Aufgabe gelöst wird, und theoretisch sollte diese Person ein tieferes Verständnis für diese einzelne Komponente besitzen, als Sie sich selbst in angemessener Zeit aneignen können.
Frameworks wie Laravel – und Symfony, Lumen und Slim – versammeln eine Reihe Komponenten von Drittanbietern und bündeln diese mit Framework-eigenem »Klebstoff« wie Konfigurationsdateien, Service Providern, vordefinierten Verzeichnisstrukturen und Anwendungs-Bootstraps. Ganz allgemein besteht der Vorteil, ein Framework zu verwenden, darin, dass jemand für Sie nicht nur bereits über einzelne Komponenten entschieden hat, sondern auch darüber, wie diese Komponenten zusammenarbeiten sollen.

»Ich baue es einfach selbst«

Nehmen wir an, Sie beginnen mit einer neuen Webapplikation, ohne die Vorteile eines Frameworks zu nutzen. Womit fangen Sie an? Ziemlich sicher müssen HTTP-Requests geroutet werden, sodass Sie sich alle verfügbaren HTTP-Request- und Response-Bibliotheken anschauen und danach eine auswählen müssen. Dann brauchen Sie einen Router. Und wahrscheinlich benötigen Sie auch irgendeine Art Konfigurationsdatei für die Routen. Welche Syntax soll dabei verwendet werden? An welcher Stelle soll die Konfigurationsdatei abgelegt werden? Und was ist mit Controllern? Wo sollen die liegen und wie sollen sie geladen werden? Wahrscheinlich benötigen Sie einen Dependency Injection Container, um die Controller und ihre Abhängigkeiten aufzulösen. Aber welchen?
Wenn Sie sich die Zeit nehmen, all diese Fragen zu beantworten und Ihre Anwendung erfolgreich zu erstellen, was bedeutet das dann für einen möglichen späteren Entwickler? Und was machen Sie, wenn Sie beispielsweise vier dieser Anwendungen mit solch einem Framework Marke Eigenbau programmiert haben – oder gar ein ganzes Dutzend – und Sie sich jeweils daran erinnern müssen, wo sich die Controller befinden oder wie genau die Routing-Syntax lautet?

Konsistenz und Flexibilität

Frameworks lösen dieses Problem, indem sie eine sorgfältig durchdachte Antwort auf die Frage »Welche Komponente sollen wir verwenden?« geben und zudem sicherstellen, dass die jeweils gewählten Komponenten auch gut zusammenarbeiten. Darüber hinaus bieten Frameworks feste Konventionen, die die Menge an Code reduzieren, die ein Entwickler, der neu zu einem Projekt stößt, verstehen muss: Sobald Sie begriffen haben, wie Routing in einem Laravel-Projekt funktioniert, wissen Sie sofort, wie es in allen Laravel-Projekten funktioniert.
Wenn jemand vorschreibt, dass sein eigenes Framework für jedes neue Projekt benutzt werden muss, dann geht es letztlich darum, zu kontrollieren, was in die Grundlage seiner Applikation einfließt und was nicht. Das bedeutet, dass Ihnen die besten Frameworks nicht nur ein solides Fundament bieten, sondern auch die Freiheit geben, praktisch alles Ihren eigenen Wünschen entsprechend anzupassen. Und genau das ist es, was Laravel so besonders macht und was ich Ihnen im weiteren Verlauf dieses Buchs zeigen möchte.

Eine kurze Geschichte der Web- und PHP-Frameworks

Will man die Frage »Warum Laravel?« beantworten, muss man seine Geschichte kennen – und seine Vorläufer. Bevor Laravel populär wurde, gab es bereits eine Vielzahl von Frameworks und anderer Entwicklungen in PHP und verwandten Bereichen.

Ruby on Rails

David Heinemeier Hansson veröffentlichte 2004 die erste Version von Ruby on Rails, und seitdem ist fast jedes Web Application Framework in irgendeiner Weise von Rails beeinflusst.
Rails popularisierte MVC, das Model-View-Controler-Paradigma, aber auch RESTful JSON APIs, die Regel »Konvention vor Konfiguration«, ActiveRecord und viele weitere Tools und Konventionen, die einen großen Einfluss auf die Art und Weise hatten, wie Webentwickler an ihre Anwendungen herangingen – insbesondere im Hinblick auf die schnelle Anwendungsentwicklung.

Eine Welle von PHP-Frameworks

Es war den meisten Entwicklern klar, dass Rails und ähnliche Frameworks die Zukunft darstellten, und schnell erschienen PHP-Frameworks auf der Bildfläche, einschließlich derjenigen, die zugegebenermaßen Rails imitierten.
CakePHP war im Jahr 2005 das erste, und es folgten bald Symfony, CodeIgniter, Zend Framework und Kohana (ein CodeIgniter-Fork). 2008 kam Yii, und 2010 erschienen Aura und Slim. 2011 sah dann die Geburt von FuelPHP und Laravel, die beide als CodeIgniter-Alternativen vorgeschlagen wurden.
Einige dieser Frameworks orientierten sich eher an Rails und konzentrierten sich auf objektrelationale Abbildung (Object-relational mapper, ORM), MVC-Strukturen und andere Tools für eine rapide Entwicklung. Andere – wie Symfony und Zend – konzentrierten sich mehr auf Enterprise Design Patterns und E-Commerce.

Das Gute und das Schlechte an CodeIgniter

CakePHP und CodeIgniter waren die beiden frühen PHP-Frameworks, bei denen klar kommuniziert wurde, wie sehr sie von Ruby on Rails inspiriert waren. CodeIgniter wurde schnell bekannt und war 2010 wohl das beliebteste der unabhängigen PHP-Frameworks.
CodeIgniter war simpel, einfach zu bedienen, besaß eine erstaunlich gute Dokumentation und wurde von einer starken Community gestützt. Aber der Einsatz moderner Technologien und Entwurfsmuster schritt nur langsam voran. Als die Framework-Welt wuchs und die PHP-Tools weiterentwickelt wurden, begann CodeIgniter sowohl in Bezug auf den technologischen Fortschritt als auch auf die Funktionen, die es out of the box mitbrachte, ins Hintertreffen zu geraten. Im Gegensatz zu vielen anderen Frameworks wurde CodeIgniter von einem Unternehmen verwaltet, und es dauerte einige Zeit, bis man die neueren Features von PHP 5.3 wie Namespaces, die Nutzung von GitHub und später Composer aufgriff. Im Jahr 2010 war Taylor Otwell, Laravels Schöpfer, schließlich so unzufrieden mit CodeIgniter, dass er begann, sein eigenes Framework zu schreiben.

Laravel 1, 2 und 3

Die erste Beta von Laravel 1 wurde im Juni 2011 veröffentlicht und war eine komplette Neuentwicklung. Sie beinhaltete einen eigenen objektrelationalen Mapper namens Eloquent, ein Closure-basiertes Routing (inspiriert von Ruby Sinatra), ein modulares Erweiterungssystem und Hilfsfunktionen für Formulare, Validierung, Authentifizierung und vieles mehr.
Die frühe Entwicklung von Laravel ging schnell voran, und Laravel 2 und 3 wurden bereits im November 2011 bzw. Februar 2012 veröffentlicht. In diesen Versionen wurden Controller, Modul-Tests, ein Befehlszeilen-Tool, ein Container mit Inversion of Control (Steuerungsumkehr), Relationen zwischen Eloquent-Modellen sowie Migrationen eingeführt.

Laravel 4

Für Laravel 4 hat Taylor Otwell das gesamte Framework noch einmal von Grund auf neu geschrieben. Zu diesem Zeitpunkt war Composer, der inzwischen allgegenwärtige Paketmanager von PHP, bereits auf dem Weg dazu, sich zu einem Industriestandard zu entwickeln, und Taylor sah einen großen Mehrwert darin, das Framework als eine Sammlung von Komponenten zu konzipieren, die von Composer verteilt und zu einem Ganzen gebündelt wurden.
Er entwickelte eine Reihe von Komponenten unter dem Codenamen Illuminate und brachte im Mai 2013 Laravel 4 heraus, das eine völlig neue Struktur besaß. Anstatt das Framework als einen großen Download anzubieten, zieht sich Lara...

Indice dei contenuti