8 nuove potenti funzionalità di sviluppo Web in Laravel 8

8 nuove potenti funzionalità di sviluppo Web in Laravel 8

Laravel è il framework PHP più popolare, con oltre 1,2 milioni di siti Web costruiti su di esso. Fin dalla sua uscita nel giugno 2011, Laravel ha attirato l'attenzione di molti sviluppatori web, presentandosi come il framework PHP più utilizzato.





Laravel offre un ambiente di sviluppo rapido, sicurezza e buone guide per gli sviluppatori. Creato e gestito dal suo creatore Taylor Otwell, Laravel ha continuato ad apportare miglioramenti al suo software. Segue uno schema di versionamento semantico ed è attualmente alla versione 8.x.





Ecco otto nuove funzionalità da tenere d'occhio in Laravel 8.





1. Laravel Jetstream

Questa è la nuova funzione di impalcatura dell'applicazione in Laravel . Viene fornito con funzionalità pronte all'uso come monitoraggio della sessione, accesso, registrazione, verifica e-mail, autenticazione a due fattori e gestione del team opzionale.

Jetstream offre la scelta di due opzioni di ponteggio: Livewire e Inertia.



Livewire è una libreria reattiva e dinamica che offre la possibilità di evitare l'utilizzo di un framework JavaScript come Vue.js. Utilizza il linguaggio di template Blade predefinito. Livewire offre anche la flessibilità di scegliere tra lasciare Blade o utilizzare Vue.js.

Inertia utilizza Vue.js come linguaggio di template.





Ulteriori informazioni: Che cos'è Vue.js?

Offre tutta la potenza di Vue.js senza la necessità di routing lato client. Se Vue è il tuo linguaggio di template preferito, lo stack Inertia è una buona scelta.





2. Squashing della migrazione

Man mano che sviluppi la tua applicazione, le tue migrazioni potrebbero accumularsi. Puoi schiacciarli in un singolo file SQL per evitare il rumore. Questa opzione è disponibile per gli utenti MySQL o PostgreSQL.

Laravel creerà un file di schema quando il comando schema: dump viene eseguito. Quando provi a migrare il tuo database, Laravel migrerà prima il file SQL associato al tuo schema. Successivamente, se sono presenti migrazioni che non facevano parte dello schema, verranno eseguite.

3. Tailwind CSS

Laravel ora utilizza il framework CSS Tailwind come paginatore predefinito. Tailwind è una prima libreria di utilità CSS che fornisce classi CSS monouso. Offre il vantaggio di avere le informazioni sullo stile in un unico posto invece di averle sparse. Puoi applicare classi predefinite direttamente al tuo documento HTML.

Tailwind offre anche la possibilità di creare progetti reattivi. Offre un primo sistema mobile simile a quello di Bootstrap. Ciò implica che le utilità senza prefisso rispondono su tutte le dimensioni dello schermo mentre le utilità con prefisso entrano in vigore in punti particolari.

Tailwind dispone anche di una modalità just-in time abilitata per generare i tuoi stili su richiesta anziché visualizzare tutto al momento della creazione iniziale. Questo lo rende più veloce rispetto all'utilizzo dei normali CSS. Un altro vantaggio che questo offre è che non è necessario sbarazzarsi degli stili di produzione inutilizzati, offrendo la possibilità di utilizzare il codice in più ambienti.

È anche interessante notare che Laravel Jetstream è stato creato utilizzando Tailwind.

4. Raccolta dei lavori

È possibile utilizzare questa funzione per eseguire un batch di lavori in un determinato momento ed eseguire determinate azioni al termine della loro esecuzione. Il Facciata dell'autobus fornisce un metodo batch che consente di inviare i lavori.

Puoi eseguire questa operazione in tandem con altri callback di completamento come catturare , poi e finalmente per aggiungere funzionalità ai tuoi lavori.

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;

Per iniziare, devi creare una tabella di migrazione che conterrà i metadati del lavoro come i tassi di completamento. Usa il comando coda artigianale php: batch-table per fare questo. Poi php artigiano migrare per migrarli. Ora puoi definire i tuoi lavori batch e poi inviarli quando sei pronto.

5. Classi di fabbrica di modelli

Per prima cosa, discutiamo delle fabbriche modello. Questi sono usati per seminare i tuoi database con dati di test. Questi dati falsi sono importanti a scopo di test prima che vengano inseriti dati utente reali.

In Laravel 8, le precedenti classi di modelli Eloquenti sono state completamente sostituite con fabbriche basate sulle classi. Con questo, ora puoi gestire gli stati degli oggetti semplicemente usando i metodi. Questi metodi in genere chiamano stato() metodo, che viene fornito nella classe factory di base di Laravel. Il stato() Il metodo accetta come argomento una funzione che accetterà un array di attributi assegnati alla fabbrica.

6. Manutenzione migliorata

In precedenza, Laravel presentava un elenco di indirizzi IP consentiti che era possibile utilizzare per accedere all'applicazione in modalità di manutenzione. Questo è stato rimosso e sostituito con una soluzione segreta più semplice. È possibile specificare il token di esclusione utilizzando il segreto opzione.

Mentre sei in modalità di manutenzione, puoi accedere all'URL della tua applicazione e Laravel passerà automaticamente il cookie di bypass al tuo browser. Una volta emesso il cookie, accederai normalmente all'applicazione come se non fosse in modalità di manutenzione.

I tuoi utenti potrebbero riscontrare errori se usi il PHP artigiano giù durante la distribuzione. Per evitare ciò, Laravel offre la possibilità di eseguire il rendering di una vista in modalità di manutenzione che verrà restituita ogni volta che viene effettuata una richiesta. Puoi pre-renderizzare un modello usando l'opzione di rendering sul comando giù.

7. Aiutanti per il test del tempo

Laravel ora include la capacità di consentirti di manipolare l'ora corrente. Hai la possibilità di utilizzare i tuoi attributi temporali come millisecondi, ore, giorni e così via.

cose interessanti da fare con kodi
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();
}

Queste funzioni di supporto rendono il tuo lavoro ordinato e facile da seguire dando nomi descrittivi ai metodi.

8. Limitazione della velocità migliorata

La limitazione della velocità ti consente di gestire la quantità di traffico che ricevi su un determinato percorso o gruppo di percorsi. Ciò può essere ottenuto utilizzando il middleware dell'acceleratore . Il middleware dell'acceleratore prende il nome del limitatore di velocità che si desidera utilizzare su un percorso. Un codice di richiesta HTTP (429) viene restituito se la richiesta in entrata supera un determinato limite di velocità.

In Laravel 8, il limitatore di velocità è stato costruito con maggiore flessibilità pur mantenendo la compatibilità con le versioni precedenti. La funzione di callback del limitatore di velocità consente di creare dinamicamente limiti di velocità adeguati stabiliti su utenti autenticati o richieste in entrata.

Tempi entusiasmanti per Laravel

Laravel è facile da imparare e fornisce un'elaborata guida per sviluppatori con esempi facili da seguire. Fornisce correzioni di bug e patch su base quasi settimanale e versioni principali annualmente (intorno a settembre). Se hai bisogno di ulteriore aiuto, Laravel fornisce la piattaforma Laracasts dove puoi ottenere l'aiuto di esperti. Tuttavia, la piattaforma offre lezioni di sviluppo web a pagamento.

Per uno sviluppatore web, Laravel è un'abilità indispensabile. È open source, gratuito e con una comunità di oltre 40.000 utenti. È una tecnologia di cui vale la pena tenere traccia.

Condividere Condividere Tweet E-mail 5 framework Web che vale la pena imparare per gli sviluppatori

Interessato a imparare lo sviluppo web avanzato? Evita di scrivere codice ripetitivo: usa invece questi framework di sviluppo web.

Leggi Avanti
Argomenti correlati
  • Programmazione
  • Sviluppo web
  • Programmazione PHP
Circa l'autore Girolamo Davidson(22 articoli pubblicati)

Jerome è uno scrittore dello staff di MakeUseOf. Si occupa di articoli su programmazione e Linux. È anche un appassionato di criptovalute e tiene sempre d'occhio l'industria delle criptovalute.

Altro da Jerome Davidson

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti