8 Krachtige nieuwe webontwikkelingsfuncties in Laravel 8

8 Krachtige nieuwe webontwikkelingsfuncties in Laravel 8

Laravel is het meest populaire PHP-framework, met meer dan 1,2 miljoen websites erop gebouwd. Sinds de release in juni 2011 heeft Laravel de aandacht getrokken van veel webontwikkelaars en presenteert het zichzelf als het meest gebruikte PHP-framework.





Laravel biedt een snelle ontwikkelomgeving, beveiliging en goede handleidingen voor ontwikkelaars. Laravel, gecreëerd en onderhouden door de maker Taylor Otwell, is doorgegaan met het verbeteren van zijn software. Het volgt een semantisch versiebeheerschema en bevindt zich momenteel op versie 8.x.





Hier zijn acht nieuwe functies om naar uit te kijken in Laravel 8.





1. Laravel Jetstream

Dit is de nieuwe toepassingssteigerfunctie in Laravel . Het wordt geleverd met kant-en-klare functies zoals sessie-tracking, inloggen, registratie, e-mailverificatie, tweefactorauthenticatie en optioneel teambeheer.

Jetstream biedt de keuze uit twee steigeropties: Livewire en Inertia.



Livewire is een responsieve en dynamische bibliotheek die de mogelijkheid biedt om het gebruik van een JavaScript-framework zoals Vue.js te vermijden. Het gebruikt de standaard Blade-sjabloontaal. Livewire biedt ook de flexibiliteit om te kiezen tussen Blade verlaten of Vue.js gebruiken.

Inertia gebruikt Vue.js als sjabloontaal.





Lees meer: ​​​​Wat is Vue.js?

Het geeft de volledige kracht van Vue.js zonder routering aan de clientzijde. Als Vue uw favoriete sjabloontaal is, dan is de Inertia-stack een goede keuze.





2. Migratie Squashing

Terwijl u uw toepassing ontwikkelt, kunnen uw migraties toenemen. Je kunt ze in een enkel SQL-bestand pletten om het gekletter te voorkomen. Deze optie is beschikbaar voor MySQL- of PostgreSQL-gebruikers.

Laravel zal een schemabestand maken wanneer de opdracht schema: dumpen is geëxecuteerd. Wanneer u uw database probeert te migreren, migreert Laravel eerst het SQL-bestand dat aan uw schema is gekoppeld. Als er daarna migraties zijn die geen deel uitmaakten van het schema, worden deze uitgevoerd.

3. Tailwind CSS

Laravel gebruikt nu het Tailwind CSS-framework als standaardpaginator. Tailwind is een CSS-hulpprogramma-first-bibliotheek die CSS-klassen voor eenmalig gebruik biedt. Het biedt het voordeel dat uw stylinginformatie op één plek staat in plaats van verspreid te zijn. U kunt vooraf gedefinieerde klassen rechtstreeks toepassen op uw HTML-document.

Tailwind biedt ook de mogelijkheid om responsieve ontwerpen te bouwen. Het biedt een mobiel eerste systeem vergelijkbaar met dat van Bootstrap. Dit houdt in dat hulpprogramma's zonder prefix op alle schermformaten reageren, terwijl hulpprogramma's met prefix op bepaalde punten van kracht worden.

Tailwind beschikt ook over een just-in-time-modus die is ingeschakeld om uw stijlen on-demand te laten genereren in plaats van dat alles wordt weergegeven tijdens de initiële bouwtijd. Dit maakt het sneller dan het gebruik van gewone CSS. Een ander voordeel dat dit biedt, is dat u uw ongebruikte productiestijlen niet hoeft te verwijderen, waardoor u uw code in meerdere omgevingen kunt gebruiken.

Het is ook interessant om op te merken dat Laravel Jetstream is gebouwd met Tailwind.

4. Job-batches

U kunt deze functie gebruiken om een ​​batch taken op een bepaald moment uit te voeren en een bepaalde actie(s) uit te voeren wanneer de uitvoering ervan is voltooid. De Bus gevel biedt een batchmethode waarmee u taken kunt verzenden.

U kunt dit samen met andere voltooiingscallbacks uitvoeren, zoals: vangst , dan en Tenslotte om functionaliteit aan uw taken toe te voegen.

use AppJobsProcessPodcast;
use AppPodcast;
use IlluminateBusBatch;
use IlluminateSupportFacadesBus;
use Throwable;
$batch = Bus::batch([
new ProcessPodcast(Podcast::find(1)),
new ProcessPodcast(Podcast::find(2)),
new ProcessPodcast(Podcast::find(3)),
new ProcessPodcast(Podcast::find(4)),
new ProcessPodcast(Podcast::find(5)),
])->then(function (Batch $batch) {
// All jobs completed successfully...
})->catch(function (Batch $batch, Throwable $e) {
// First batch job failure detected...
})->finally(function (Batch $batch) {
// The batch has finished executing...
})->dispatch();
return $batch->id;

Om aan de slag te gaan, moet u een migratietabel maken die taakmetagegevens bevat, zoals voltooiingspercentages. Gebruik het commando php artisan wachtrij:batches-tabel om dit te doen. En dan php artisan migreren om ze te migreren. U kunt nu uw batchbare taken definiëren en vervolgens verzenden wanneer u klaar bent.

5. Modelfabrieksklassen

Laten we eerst de modelfabrieken bespreken. Deze worden gebruikt om uw databases te voorzien van testgegevens. Deze nepgegevens zijn belangrijk voor testdoeleinden voordat echte gebruikersgegevens worden ingevoerd.

In Laravel 8 zijn de voormalige Eloquent-modelklassen volledig vervangen door op klassen gebaseerde fabrieken. Hiermee kunt u nu objectstatussen beheren door simpelweg methoden te gebruiken. Deze methoden noemen meestal de staat() methode, die wordt gegeven in de Laravel-basisfabrieksklasse. De staat() methode neemt als argument een functie op die een reeks attributen zal opnemen die aan de fabriek zijn toegewezen.

6. Verbeterd onderhoud

Voorheen had Laravel een lijst met toegestane IP-adressen die je zou kunnen gebruiken om toegang te krijgen tot de applicatie in onderhoudsmodus. Dit is verwijderd en vervangen door een eenvoudiger geheime oplossing. U kunt het bypass-token specificeren met behulp van de geheim optie.

In de onderhoudsmodus hebt u toegang tot uw applicatie-URL en geeft Laravel automatisch de bypass-cookie door aan uw browser. Zodra de cookie is uitgegeven, krijgt u normaal toegang tot de applicatie alsof deze zich niet in de onderhoudsmodus bevond.

Uw gebruikers kunnen fouten tegenkomen als u PHP gebruikt ambachtelijk neer tijdens inzet. Om dit te voorkomen, biedt Laravel de mogelijkheid om een ​​onderhoudsmodusweergave weer te geven die wordt geretourneerd wanneer een verzoek wordt gedaan. U kunt een sjabloon vooraf renderen met behulp van de render-optie op het down-commando.

7. Helpers voor tijdtesten

Laravel bevat nu de mogelijkheid om u in staat te stellen de huidige tijd te manipuleren. U hebt de mogelijkheid om uw tijdkenmerken te gebruiken als milliseconden, uren, dagen, enzovoort.

gratis wifi-oproep-app voor Android
public function testTimeCanBeManipulated()
{
// Travel into the future...
$this->travel(5)->milliseconds();
$this->travel(5)->seconds();
$this->travel(5)->minutes();
$this->travel(5)->hours();
$this->travel(5)->days();
$this->travel(5)->weeks();
$this->travel(5)->years();
// Travel into the past...
$this->travel(-5)->hours();
// Travel to an explicit time...
$this->travelTo(now()->subHours(6));
// Return back to the present time...
$this->travelBack();
}

Deze hulpfuncties maken uw werk netjes en gemakkelijk te volgen door beschrijvende namen aan de methoden te geven.

8. Verbeterde snelheidsbeperking

Met snelheidsbeperking kunt u de hoeveelheid verkeer beheren die u op een bepaalde route of groep routes ontvangt. Dit kan worden bereikt met behulp van de gaspedaal middleware . De gas-middleware neemt de naam aan van de snelheidsbegrenzer die je op een route wilt gebruiken. Een HTTP-verzoekcode (429) wordt geretourneerd als het binnenkomende verzoek een bepaalde snelheidslimiet overschrijdt.

In Laravel 8 is de snelheidsbegrenzer gebouwd met meer flexibiliteit en toch achterwaartse compatibiliteit. Met de callback-functie van de snelheidsbegrenzer kunt u dynamisch geschikte snelheidslimieten bouwen die zijn vastgesteld voor geverifieerde gebruikers of inkomende verzoeken.

Spannende tijden in het verschiet voor Laravel

Laravel is gemakkelijk te leren en biedt een uitgebreide handleiding voor ontwikkelaars met gemakkelijk te volgen voorbeelden. Het biedt bijna wekelijks bugfixes en patches en grote releases jaarlijks (rond september). Als je meer hulp nodig hebt, biedt Laravel het Laracasts-platform waar je deskundige hulp kunt krijgen. Het platform biedt echter betaalde lessen voor webontwikkeling.

Voor een webontwikkelaar is Laravel een onmisbare vaardigheid. Het is open source, gratis te gebruiken en met een gemeenschap van meer dan 40.000 gebruikers. Het is een technologie die de moeite waard is om in de gaten te houden.

Deel Deel Tweeten E-mail 5 webframeworks die het leren waard zijn voor ontwikkelaars

Geïnteresseerd in het leren van geavanceerde webontwikkeling? Vermijd het schrijven van repetitieve code --- gebruik in plaats daarvan deze frameworks voor webontwikkeling.

Lees volgende
Gerelateerde onderwerpen
  • Programmeren
  • Webontwikkeling
  • PHP-programmering
Over de auteur Jerome Davidson(22 artikelen gepubliceerd)

Jerome is een stafschrijver bij MakeUseOf. Hij behandelt artikelen over programmeren en Linux. Hij is ook een crypto-enthousiasteling en houdt de crypto-industrie altijd in de gaten.

Meer van Jerome Davidson

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren