8 nouvelles fonctionnalités de développement Web puissantes dans Laravel 8

8 nouvelles fonctionnalités de développement Web puissantes dans Laravel 8

Laravel est le framework PHP le plus populaire, avec plus de 1,2 million de sites Web construits dessus. Depuis sa sortie en juin 2011, Laravel a attiré l'attention de nombreux développeurs web, se présentant comme le framework PHP le plus utilisé.





Laravel offre un environnement de développement rapide, une sécurité et de bons guides de développement. Créé et maintenu par son créateur Taylor Otwell, Laravel n'a cessé d'apporter des améliorations à son logiciel. Il suit un schéma de versionnage sémantique et est actuellement à la version 8.x.





Voici huit nouvelles fonctionnalités à surveiller dans Laravel 8.





1. Laravel Jetstream

Il s'agit de la nouvelle fonctionnalité d'échafaudage d'applications dans Laravel . Il est livré avec des fonctionnalités prêtes à l'emploi telles que le suivi de session, la connexion, l'enregistrement, la vérification des e-mails, l'authentification à deux facteurs et la gestion d'équipe en option.

Jetstream offre le choix entre deux options d'échafaudage : Livewire et Inertia.



Livewire est une bibliothèque réactive et dynamique qui offre la possibilité d'éviter d'utiliser un framework JavaScript tel que Vue.js. Il utilise la langue de création de modèles Blade par défaut. Livewire offre également la possibilité de choisir entre quitter Blade ou utiliser Vue.js.

Inertia utilise Vue.js comme langage de template.





Lire la suite : Qu'est-ce que Vue.js ?

Il donne toute la puissance de Vue.js sans avoir besoin de routage côté client. Si Vue est votre langage de template préféré, alors la pile Inertia est un bon choix.





2. Écrasement des migrations

Au fur et à mesure que vous développez votre application, vos migrations peuvent s'accumuler. Vous pouvez les écraser dans un seul fichier SQL pour éviter le cliquetis. Cette option est disponible pour les utilisateurs MySQL ou PostgreSQL.

Laravel créera un fichier de schéma lorsque la commande schéma:vidage est exécuté. Lorsque vous essayez de migrer votre base de données, Laravel migrera d'abord le fichier SQL associé à votre schéma. Par la suite, s'il y a des migrations qui ne faisaient pas partie du schéma, elles seront alors exécutées.

3. Tailwind CSS

Laravel utilise désormais le framework CSS Tailwind comme paginateur par défaut. Tailwind est une bibliothèque CSS d'abord utilitaire qui fournit des classes CSS à usage unique. Il offre l'avantage d'avoir vos informations de style en un seul endroit plutôt que de les disperser. Vous pouvez appliquer des classes prédéfinies directement à votre document HTML.

Tailwind offre également la possibilité de créer des conceptions réactives. Il propose un premier système mobile similaire à celui de Bootstrap. Cela implique que les utilitaires non préfixés répondent sur toutes les tailles d'écran tandis que les utilitaires préfixés entrent en vigueur à des points particuliers.

Tailwind propose également un mode juste-à-temps activé pour que vos styles soient générés à la demande plutôt que d'avoir tout rendu au moment de la construction initiale. Cela le rend plus rapide que l'utilisation de CSS ordinaire. Un autre avantage que cela offre est que vous n'avez pas besoin de vous débarrasser de vos styles de production inutilisés, ce qui vous donne la possibilité d'utiliser votre code dans plusieurs environnements.

Il est également intéressant de noter que Laravel Jetstream a été construit en utilisant Tailwind.

4. Lot de travaux

Vous pouvez utiliser cette fonctionnalité pour exécuter un lot de tâches à un moment donné et effectuer une ou plusieurs actions lorsque leur exécution est terminée. Les Façade de bus fournit une méthode par lots qui vous permet de répartir les travaux.

Vous pouvez effectuer cela en tandem avec d'autres rappels d'achèvement comme attraper , alors et finalement pour ajouter des fonctionnalités à vos travaux.

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;

Pour commencer, vous devez créer une table de migration qui contiendra des métadonnées de tâche telles que les taux d'achèvement. Utilisez la commande file d'attente des artisans php:table des lots pour faire ça. Puis php artisan migrer de les migrer. Vous pouvez maintenant définir vos tâches par lots, puis les expédier lorsque vous êtes prêt.

5. Classes d'usine modèle

Tout d'abord, parlons des usines modèles. Ceux-ci sont utilisés pour ensemencer vos bases de données avec des données de test. Ces fausses données sont importantes à des fins de test avant que des données utilisateur réelles ne soient insérées.

Dans Laravel 8, les anciennes classes modèles Eloquent ont été complètement remplacées par des usines basées sur les classes. Avec cela, vous pouvez désormais gérer les états des objets en utilisant simplement des méthodes. Ces méthodes appellent généralement le Etat() méthode, qui est donnée dans la classe d'usine de base Laravel. Les Etat() La méthode prend en argument une fonction qui prendra en compte un tableau d'attributs assignés à la fabrique.

6. Entretien amélioré

Auparavant, Laravel comportait une liste d'autorisation d'adresses IP que vous pouviez utiliser pour accéder à l'application en mode maintenance. Cela a été supprimé et remplacé par une solution secrète plus simple. Vous pouvez spécifier le jeton de contournement à l'aide de la secret option.

En mode maintenance, vous pouvez accéder à l'URL de votre application et Laravel transmettra automatiquement le cookie de contournement à votre navigateur. Une fois le cookie émis, vous accéderez à l'application normalement comme si elle n'était pas en mode maintenance.

Vos utilisateurs peuvent rencontrer des erreurs si vous utilisez le PHP artisan vers le bas lors du déploiement. Pour éviter cela, Laravel offre la possibilité d'afficher une vue en mode maintenance qui sera renvoyée chaque fois qu'une demande est effectuée. Vous pouvez effectuer un pré-rendu d'un modèle à l'aide de l'option de rendu de la commande vers le bas.

7. Aides aux tests de temps

Laravel inclut désormais la capacité de vous permettre de manipuler l'heure actuelle. Vous avez la possibilité d'utiliser vos attributs de temps en millisecondes, heures, jours, etc.

Windows 10 lent après la mise à jour 2019
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();
}

Ces fonctions d'assistance rendent votre travail soigné et facile à suivre en donnant des noms descriptifs aux méthodes.

8. Limitation de débit améliorée

La limitation de débit vous permet de gérer la quantité de trafic que vous recevez sur un certain itinéraire ou groupe d'itinéraires. Ceci peut être réalisé en utilisant le middleware d'accélérateur . Le middleware des gaz prend le nom du limiteur de débit que vous souhaitez utiliser sur un itinéraire. Un code de requête HTTP (429) est renvoyé si la requête entrante dépasse une limite de débit donnée.

Dans Laravel 8, le limiteur de débit a été conçu avec plus de flexibilité tout en conservant une rétrocompatibilité. La fonction de rappel du limiteur de débit vous permet de créer dynamiquement des limites de débit appropriées établies sur les utilisateurs authentifiés ou les demandes entrantes.

Des temps passionnants à venir pour Laravel

Laravel est facile à apprendre et fournit un guide du développeur élaboré avec des exemples faciles à suivre. Il fournit des corrections de bogues et des correctifs presque chaque semaine et des versions majeures chaque année (vers septembre). Si vous avez besoin de plus d'aide, Laravel fournit la plate-forme Laracasts où vous pouvez obtenir l'aide d'un expert. Cependant, la plate-forme propose des cours de développement Web payants.

Pour un développeur Web, Laravel est une compétence indispensable. Il est open source, gratuit et avec une communauté de plus de 40 000 utilisateurs. C'est une technologie qui mérite d'être suivie.

Partager Partager Tweeter E-mail 5 frameworks Web à apprendre pour les développeurs

Intéressé par l'apprentissage du développement Web avancé? Évitez d'écrire du code répétitif --- utilisez plutôt ces frameworks de développement Web.

Lire la suite
Rubriques connexes
  • La programmation
  • Développement web
  • Programmation PHP
A propos de l'auteur Jérôme Davidson(22 articles publiés)

Jérôme est rédacteur chez MakeUseOf. Il couvre des articles sur la programmation et Linux. Il est également un passionné de crypto et garde toujours un œil sur l'industrie de la crypto.

Plus de Jerome Davidson

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner