la programmation

Évolution de Laravel 5.3

Depuis la version 5.3, Laravel, le populaire framework PHP, a connu plusieurs améliorations et modifications significatives dans sa structure de projet. Voici un aperçu détaillé des principaux changements apportés à la structure des projets Laravel à partir de la version 5.3 :

  1. Introduction des Notifications :

    • Laravel 5.3 a introduit un nouveau système de notifications, permettant aux développeurs de notifier les utilisateurs via divers canaux tels que les e-mails, les SMS et les notifications de base de données.
    • Pour intégrer ces notifications, une nouvelle arborescence de fichiers a été introduite dans le répertoire app pour stocker les différentes classes de notification.
  2. Passage à Vue.js :

    • Laravel 5.3 a commencé à promouvoir l’intégration de Vue.js pour la gestion des composants côté client.
    • Un répertoire resources/assets/js a été ajouté pour stocker les fichiers JavaScript utilisés pour les composants Vue.js.
    • Laravel Mix, un wrapper simplifié autour de Webpack, a été introduit pour la compilation et la gestion des ressources JavaScript et CSS.
  3. Refonte des Contrôleurs :

    • Les contrôleurs ont subi des modifications dans leur syntaxe et leur utilisation.
    • Les contrôleurs sont désormais regroupés dans le répertoire app/Http/Controllers.
  4. Migrations et Seeders :

    • Laravel 5.3 a continué à encourager l’utilisation des migrations et des seeders pour la gestion des bases de données.
    • Les fichiers de migration sont placés dans le répertoire database/migrations, tandis que les seeders sont placés dans database/seeds.
  5. Introduction des Policies :

    • Laravel 5.3 a introduit les « policies », permettant de définir des règles d’autorisation sur les différentes actions des utilisateurs.
    • Les fichiers de politique sont stockés dans le répertoire app/Policies.
  6. Middleware Grouping :

    • Les middlewares peuvent désormais être regroupés pour simplifier leur application sur plusieurs routes.
    • La définition des middleware groups se fait dans le fichier app/Http/Kernel.php.
  7. Directory Structure Changes :

    • Quelques modifications mineures ont été apportées à la structure des répertoires, mais l’organisation générale reste similaire à celle des versions antérieures.
  8. Améliorations de la Sécurité :

    • Laravel 5.3 a apporté des améliorations de sécurité telles que le chiffrement par défaut des cookies, la mise à jour de la bibliothèque « bcrypt » pour le hachage des mots de passe, et la possibilité de désactiver la réinitialisation des mots de passe par e-mail.
  9. Améliorations de Performance :

    • Des optimisations de performances ont été apportées dans le chargement des routes et la résolution des dépendances, ce qui a conduit à des applications plus rapides et plus efficaces.
  10. Autres Modifications :

    • Laravel 5.3 a également introduit des fonctionnalités telles que la validation de la syntaxe JSON, l’amélioration de la syntaxe des traits, l’ajout de la méthode pluck aux collections Eloquent, et la possibilité d’ordonner les collections par plusieurs colonnes.

En somme, les modifications apportées à la structure des projets Laravel à partir de la version 5.3 ont visé à améliorer la qualité du code, la sécurité, les performances, tout en introduisant de nouvelles fonctionnalités pour simplifier le développement d’applications web robustes et évolutives.

Plus de connaissances

Bien sûr, plongeons plus en détail dans chaque aspect des modifications apportées à la structure des projets Laravel à partir de la version 5.3 :

  1. Introduction des Notifications :

    • Les notifications dans Laravel 5.3 ont été introduites pour faciliter l’envoi de notifications à travers divers canaux tels que les e-mails, les SMS, les notifications de base de données, et d’autres.
    • Les notifications sont des classes PHP simples qui représentent un message à envoyer à un utilisateur ou un groupe d’utilisateurs.
    • Elles sont stockées dans le répertoire app/Notifications par défaut.
    • Les canaux de notification peuvent être personnalisés en fonction des besoins de l’application.
  2. Passage à Vue.js :

    • Laravel a commencé à promouvoir Vue.js comme une option pour la gestion des composants côté client, bien qu’il soit toujours possible d’utiliser d’autres frameworks JavaScript comme React ou Angular.
    • Le répertoire resources/assets/js a été ajouté pour stocker les fichiers JavaScript utilisés pour les composants Vue.js.
    • Laravel Mix simplifie la compilation et la gestion des ressources JavaScript et CSS en utilisant Webpack.
    • L’intégration de Vue.js permet une expérience de développement plus fluide pour la création d’applications web interactives et réactives.
  3. Refonte des Contrôleurs :

    • Les contrôleurs dans Laravel 5.3 ont subi des modifications mineures dans leur syntaxe et leur utilisation, mais leur fonctionnalité de base est restée inchangée.
    • Les contrôleurs sont regroupés dans le répertoire app/Http/Controllers par défaut, où chaque contrôleur est une classe PHP qui gère les requêtes HTTP entrantes et renvoie une réponse appropriée.
  4. Migrations et Seeders :

    • Les migrations permettent de gérer l’évolution de la structure de la base de données de manière incrémentielle, tandis que les seeders sont utilisés pour alimenter la base de données avec des données initiales.
    • Les fichiers de migration sont généralement placés dans le répertoire database/migrations, tandis que les seeders sont placés dans database/seeds.
    • Ces fonctionnalités sont essentielles pour maintenir la cohérence de la base de données tout au long du cycle de vie de l’application et pour simplifier le processus de déploiement.
  5. Introduction des Policies :

    • Les « policies » dans Laravel 5.3 permettent de définir des règles d’autorisation sur les différentes actions des utilisateurs, telles que la création, la lecture, la mise à jour et la suppression des ressources.
    • Les fichiers de politique sont stockés dans le répertoire app/Policies et sont généralement associés à un modèle spécifique.
    • Les politiques offrent un moyen élégant de centraliser la logique d’autorisation dans l’application et d’améliorer la maintenabilité du code.
  6. Middleware Grouping :

    • Les middlewares sont des couches intermédiaires qui peuvent être utilisées pour filtrer les requêtes HTTP entrantes avant qu’elles n’atteignent les routes de l’application.
    • Laravel 5.3 a introduit la possibilité de regrouper les middlewares pour simplifier leur application sur plusieurs routes.
    • Cela permet une gestion plus efficace des middlewares et une meilleure organisation du code.
  7. Directory Structure Changes :

    • Bien que la structure de base des répertoires dans Laravel n’ait pas beaucoup changé depuis la version 5.3, des ajustements mineurs ont été apportés pour refléter les nouvelles fonctionnalités et améliorer l’organisation du code.
    • Les répertoires principaux tels que app, bootstrap, config, database, public, resources, routes, storage et tests sont toujours présents, avec quelques sous-répertoires ajoutés pour les nouvelles fonctionnalités.
  8. Améliorations de la Sécurité :

    • Laravel 5.3 a renforcé la sécurité en introduisant des fonctionnalités telles que le chiffrement par défaut des cookies, ce qui réduit les risques d’attaque par session, et en mettant à jour la bibliothèque « bcrypt » pour le hachage sécurisé des mots de passe.
    • De plus, Laravel 5.3 offre la possibilité de désactiver la réinitialisation des mots de passe par e-mail, ce qui peut être utile dans certaines situations de sécurité.
  9. Améliorations de Performance :

    • Des améliorations de performances significatives ont été apportées dans Laravel 5.3, notamment dans le chargement des routes et la résolution des dépendances.
    • Ces optimisations contribuent à accélérer le temps de réponse de l’application et à améliorer l’expérience utilisateur globale.
  10. Autres Modifications :

    • Laravel 5.3 a également apporté diverses autres améliorations et fonctionnalités, telles que la validation de la syntaxe JSON, l’amélioration de la syntaxe des traits pour une meilleure réutilisabilité du code, l’ajout de la méthode pluck aux collections Eloquent pour extraire des valeurs spécifiques, et la possibilité d’ordonner les collections par plusieurs colonnes.

En résumé, les modifications apportées à la structure des projets Laravel à partir de la version 5.3 ont été conçues pour améliorer la qualité du code, la sécurité, les performances, et pour introduire de nouvelles fonctionnalités facilitant le développement d’applications web modernes et évolutives. Ces changements ont renforcé la position de Laravel comme l’un des frameworks PHP les plus populaires et les plus puissants disponibles sur le marché.

Bouton retour en haut de la page