Laravel : un framework PHP pour ceux qui aiment le beau code

Après avoir essuyé de nombreux problèmes de cache avec Symfony, puis avoir subit les dégats occasionnés avec la refonte de Zend 2, je me suis essayé à Laravel, et je suis fan ! Je vais rapidement vous faire une petite liste de ce que Laravel propose.

Comme dans chaque framework, le code est découpé en Modèle / Vue / Controlleur.
A noter que Composer, et Bootstrap sont intégrés d’origine.

Ce que j’ai aimé:

  • La gestion de la base de données. Vous créer des scripts pour générer vos tables, et l’insertion des éléments en base, si bien que lors d’une restauration, vous n’avez quasiment rien à faire. Tout se créé et s’importe via une seule commande.
    Et le top, c’est l’interface qui permet de créer son schéma de base avec les contraintes de relations:
    http://www.laravelsd.com
  • La sécurité. Il y a des tokens CSRF générés sur chaque formulaire pour éviter les failles XSS. Toutes les requêtes sont bindées en PDO, ce qui évite toutes les injections SQL. De plus, le middleware permet d’autoriser ou non des urls en fonctions des permissions de chaque utilisateur.
  • L’injection de dépendances: merci composer ! Il y a plein de plugins à rajouter qui sont déjà codés, et qui fonctionnent super bien (Gestion des rôles avec Entrust , exports Excel, connexions aux services Google…)
  • La configuration. Tout est centralisé dans des fichiers de configuration (base de données, connexions à des services tiers, gestion des mails…)
  • Les tâches planifiées (cron) et les files d’attentes. Il y a tout ce qu’il faut de base pour gérer ces problématiques.
  • Les validators qui permettent de valider certains comportements (sur les champs au bon format, sur l’unicité d’un email…)
  • La gestion des utilisateurs (avec formulaire d’authentification, renvoi du mail de mot de passe, gestion des sessions…)
  • Les tests unitaires (avec Dust, c’est tellement beau de voir Chrome se lancer et exécuter des actions tout seul)

Le seul inconvénient que j’y vois à part qu’il nécessite PHP 5.6, c’est que pour une simple application, il vous faudra passer un peu de temps à vous former, et à créer ce type d’architecture. Pour les développeurs qui travaillent en mode pompier, c’est pas top, mais pour les autres qui veulent écrire du code propre et maintenable, ca vaut vraiment le détour.

Edit: je vous rajoute un lien vers un tutorial vraiment bien fait: http://maurice-chavelli.developpez.com/tutoriels/apprendre-laravel-4/

 

Laisser un commentaire

*