Searching...
Français
English
Español
简体中文
Français
Deutsch
日本語
Português
Italiano
한국어
Русский
Nederlands
العربية
Polski
हिन्दी
Tiếng Việt
Svenska
Ελληνικά
Türkçe
ไทย
Čeština
Română
Magyar
Українська
Bahasa Indonesia
Dansk
Suomi
Български
עברית
Norsk
Hrvatski
Català
Slovenčina
Lietuvių
Slovenščina
Српски
Eesti
Latviešu
فارسی
മലയാളം
தமிழ்
اردو
Laravel

Laravel

Up and Running: A Framework for Building Modern PHP Apps
by Matt Stauffer 2016 452 pages
Programming
Technology
Computer Science
Écouter

Points clés

1. Laravel simplifie le développement d'applications web avec une syntaxe élégante et des fonctionnalités puissantes

"Laravel est, en son cœur, destiné à équiper et à habiliter les développeurs. Son objectif est de fournir un code et des fonctionnalités clairs, simples et beaux qui aident les développeurs à apprendre rapidement, à démarrer et à développer, et à écrire un code simple, clair et durable."

Philosophie du framework. Laravel se concentre sur le bonheur et la productivité des développeurs. Il y parvient grâce à la convention plutôt qu'à la configuration, permettant aux développeurs de démarrer rapidement sans excès de code standard. Le framework offre un ensemble robuste d'outils et de bibliothèques couvrant les tâches courantes du développement web, de la gestion des routes et de l'accès aux bases de données à l'authentification et à la mise en cache.

Syntaxe élégante. La syntaxe de Laravel est conçue pour être expressive et intuitive. Cela se manifeste dans divers aspects du framework :

  • Requêtes de base de données fluides : User::where('active', true)->orderBy('name')->get()
  • Définitions de routes simples : Route::get('/users', [UserController::class, 'index'])
  • Règles de validation expressives : 'email' => 'required|email|unique:users'

Fonctionnalités puissantes. Laravel inclut une large gamme de fonctionnalités intégrées qui accélèrent le développement :

  • Eloquent ORM pour les interactions avec la base de données
  • Moteur de templates Blade pour les vues
  • Outil en ligne de commande Artisan pour les tâches courantes
  • Systèmes d'authentification et d'autorisation intégrés
  • Système de file d'attente pour le traitement des tâches en arrière-plan
  • Diffusion d'événements et intégration WebSocket

2. Le routage et les contrôleurs forment l'épine dorsale de la gestion des requêtes de Laravel

"Les contrôleurs sont essentiellement des classes responsables de router les requêtes des utilisateurs vers les services et les données de l'application, et de renvoyer une réponse utile à l'utilisateur."

Système de routage. Le système de routage de Laravel permet aux développeurs de définir comment l'application répond aux requêtes HTTP. Les routes peuvent être définies pour différents méthodes HTTP (GET, POST, PUT, DELETE, etc.) et peuvent inclure des paramètres pour des segments dynamiques de l'URL.

Organisation des contrôleurs. Les contrôleurs dans Laravel fournissent une manière structurée de regrouper la logique de gestion des requêtes. Ils peuvent être organisés en :

  • Contrôleurs de ressources pour les API RESTful
  • Contrôleurs à action unique pour des fonctionnalités ciblées
  • Contrôleurs invocables pour des actions simples et à but unique

Middleware. Le middleware de Laravel offre un mécanisme pratique pour filtrer les requêtes HTTP entrant dans l'application :

  • Vérifications d'authentification
  • Protection CSRF
  • Limitation du taux d'API
  • Logique métier personnalisée

3. Le moteur de templates Blade offre une manière propre et expressive de créer des vues

"Blade est le moteur de templates de Laravel. Son objectif principal est une syntaxe claire, concise et expressive avec une puissante héritabilité et extensibilité."

Héritage de templates. Blade permet aux développeurs de créer des mises en page réutilisables :

  • Définir des mises en page maîtres avec des directives @yield
  • Étendre les mises en page dans les vues enfants avec @extends
  • Remplacer des sections en utilisant @section et @endsection

Directives et structures de contrôle. Blade fournit une syntaxe propre pour les structures de contrôle PHP courantes :

  • Conditionnels : @if, @else, @elseif, @unless
  • Boucles : @foreach, @for, @while
  • Inclusion de sous-vues : @include
  • Directives personnalisées pour étendre les fonctionnalités

Affichage et échappement des données. Blade facilite l'affichage des données tout en protégeant contre les attaques XSS :

  • Afficher des données avec échappement automatique : {{ $variable }}
  • Afficher des données non échappées (à utiliser avec précaution) : {!! $variable !!}
  • Accéder facilement aux données imbriquées : {{ $user->profile->name }}

4. Eloquent ORM simplifie les interactions avec la base de données grâce à une implémentation ActiveRecord intuitive

"Eloquent est l'ORM ActiveRecord de Laravel, qui facilite la relation entre une classe Post (modèle) et la table de base de données posts, et permet d'obtenir tous les enregistrements avec un appel comme Post::all()."

Définition de modèle. Les modèles Eloquent représentent les tables de base de données et fournissent une interface intuitive pour interagir avec les données :

  • Définir des relations entre les modèles (hasMany, belongsTo, etc.)
  • Configurer des accesseurs et des mutateurs pour la transformation des données
  • Implémenter des événements de modèle pour des hooks dans le cycle de vie

Construction de requêtes. Eloquent fournit une interface fluide pour construire des requêtes de base de données :

  • Récupérer des données : User::where('active', true)->get()
  • Insérer des enregistrements : User::create(['name' => 'John', 'email' => 'john@example.com'])
  • Mettre à jour des enregistrements : $user->update(['status' => 'active'])
  • Supprimer des enregistrements : $user->delete()

Fonctionnalités avancées. Eloquent inclut des fonctionnalités puissantes pour des opérations complexes sur la base de données :

  • Chargement anticipé pour résoudre le problème des requêtes N+1
  • Suppressions douces pour archiver des enregistrements
  • Usines de modèles et seeders pour les tests et le développement
  • Scopes de requêtes pour une logique de requête réutilisable

5. Laravel offre une authentification et une autorisation robustes dès le départ

"Laravel est livré avec le modèle User par défaut, la migration create_users_table, les contrôleurs d'authentification et le scaffold d'authentification, Laravel est livré avec un système complet d'authentification des utilisateurs dès le départ."

Système d'authentification. Laravel fournit un système d'authentification complet qui peut être configuré avec un minimum de configuration :

  • Inscription et connexion des utilisateurs
  • Fonctionnalité de réinitialisation de mot de passe
  • Fonctionnalité "Se souvenir de moi"
  • Vérification par email

Autorisation. Le framework inclut un système d'autorisation puissant :

  • Définir des politiques pour la logique d'autorisation spécifique aux modèles
  • Utiliser des Gates pour des closures simples afin de déterminer si un utilisateur est autorisé
  • Implémenter des middleware pour l'autorisation au niveau des routes

Personnalisation. Bien que le système d'authentification par défaut soit complet, Laravel permet une personnalisation facile :

  • Modifier les vues et la logique d'authentification
  • Implémenter une multi-authentification avec des guards
  • Intégrer des fournisseurs d'authentification tiers

6. L'outil en ligne de commande Artisan améliore la productivité et simplifie les tâches courantes

"Artisan est l'outil qui permet d'interagir avec les applications Laravel depuis la ligne de commande."

Commandes intégrées. Artisan est livré avec une large gamme de commandes utiles :

  • Générer du code standard pour les modèles, contrôleurs, migrations, etc.
  • Exécuter des migrations et des seeders de base de données
  • Vider divers caches de l'application
  • Gérer le système de file d'attente

Commandes personnalisées. Les développeurs peuvent créer leurs propres commandes Artisan :

  • Générer des fichiers de commande avec php artisan make:command
  • Définir la signature et la description de la commande
  • Implémenter la logique de la commande dans la méthode handle

Planification des tâches. Artisan inclut un planificateur de tâches qui permet une gestion facile des tâches récurrentes :

  • Définir un planning dans le fichier app/Console/Kernel.php
  • Utiliser une syntaxe expressive pour définir la fréquence des tâches
  • Exécuter une seule entrée Cron sur le serveur pour gérer toutes les tâches planifiées

7. L'écosystème de Laravel inclut des outils puissants pour les tests, les files d'attente et la diffusion d'événements

"Laravel fournit une série d'outils pour implémenter des files d'attente, des tâches en file d'attente, des événements et la publication d'événements WebSocket. Nous couvrirons également le planificateur de Laravel, qui rend le cron obsolète."

Tests. Laravel inclut des outils pour les tests unitaires et fonctionnels :

  • Intégration de PHPUnit dès le départ
  • Traits DatabaseMigrations et DatabaseTransactions pour les tests de base de données
  • Simulation de façades et de services pour des tests unitaires isolés
  • Tests de navigateur avec Laravel Dusk

Système de file d'attente. Le système de file d'attente de Laravel permet de différer les tâches chronophages :

  • Plusieurs drivers de file d'attente (base de données, Redis, Amazon SQS, etc.)
  • Classes de tâches pour encapsuler la logique de file d'attente
  • Gestion des tâches échouées et mécanismes de réessai

Diffusion d'événements. Laravel facilite l'implémentation de fonctionnalités en temps réel :

  • Définir et déclencher des événements au sein de l'application
  • Diffuser des événements via WebSockets
  • Intégrer des services comme Pusher ou utiliser Laravel Echo pour l'écoute côté client

Outils de l'écosystème. L'écosystème de Laravel inclut des outils supplémentaires qui étendent ses capacités :

  • Laravel Forge pour la gestion et le déploiement de serveurs
  • Laravel Nova pour le développement rapide de panneaux d'administration
  • Laravel Vapor pour le déploiement sans serveur sur AWS Lambda

En tirant parti de ces fonctionnalités et outils puissants, les développeurs peuvent créer des applications web robustes, évolutives et maintenables avec Laravel. L'accent mis par le framework sur l'expérience des développeurs, combiné à sa fonctionnalité étendue, en fait un excellent choix pour des projets de toutes tailles.

Last updated:

Avis

4.47 out of 5
Average of 100+ ratings from Goodreads and Amazon.

Laravel par Matt Stauffer est très apprécié par les lecteurs, avec une note globale de 4,47/5. De nombreux critiques le trouvent complet, couvrant à la fois les bases et les sujets avancés. Il est recommandé aussi bien pour les débutants que pour les développeurs expérimentés. Les lecteurs apprécient ses explications détaillées, ses exemples pratiques et ses sessions de test. Certains le considèrent comme un excellent guide de référence. Quelques lecteurs ont noté qu'il ne suit pas une approche de projet guidé et peut être obsolète pour les dernières versions de Laravel. Dans l'ensemble, il est perçu comme une ressource précieuse pour apprendre et maîtriser le framework Laravel.

À propos de l'auteur

Matt Stauffer est un auteur respecté et un expert du framework Laravel. Son livre sur Laravel a été largement salué pour sa rigueur et sa clarté. Le style d'écriture de Stauffer est apprécié pour être accessible aux débutants tout en offrant des perspectives précieuses aux développeurs expérimentés. Il possède une compréhension approfondie de l'architecture de Laravel et des meilleures pratiques, qu'il communique efficacement dans son travail. L'expertise de Stauffer ne se limite pas à l'explication du framework ; il met également l'accent sur les techniques de codage appropriées et les méthodologies de test. Ses contributions à la communauté Laravel à travers ses écrits ont aidé de nombreux développeurs à améliorer leurs compétences et leur compréhension du framework.

0:00
-0:00
1x
Create a free account to unlock:
Bookmarks – save your favorite books
History – revisit books later
Ratings – rate books & see your ratings
Listening – audio summariesListen to the first takeaway of every book for free, upgrade to Pro for unlimited listening.
Unlock unlimited listening
Your first week's on us
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 5: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Sep 26,
cancel anytime before.
What our users say
“...I can 10x the number of books I can read...”
“...exceptionally accurate, engaging, and beautifully presented...”
“...better than any amazon review when I'm making a book-buying decision...”
Compare Features
Free Pro
Read full text summaries
Listen to full summaries
Unlimited Bookmarks
Unlimited History
Benefits
Get Ahead in Your Career
People who read at least 7 business books per year earn 2.3 times more on average than those who only read one book per year.
Unlock Knowledge Faster (or Read any book in 10 hours minutes)
How would your life change if we gave you the superpower to read 10 books per month?
Access 12,000+ hours of audio
Access almost unlimited content—if you listen to 1 hour daily, it’ll take you 33 years to listen to all of it.
Priority 24/7 AI-powered and human support
If you have any questions or issues, our AI can resolve 90% of the issues, and we respond in 2 hours during office hours: Mon-Fri 9 AM - 9 PM PT.
New features and books every week
We are a fast-paced company and continuously add more books and features on a weekly basis.
Fun Fact
2.8x
Pro users consume 2.8x more books than free users.
Interesting Stats
Reduced Stress: Reading for just 6 minutes can reduce stress levels by 68%
Reading can boost emotional development and career prospects by 50% to 100%
Vocabulary Expansion: Reading for 20 minutes a day are exposed to about 1.8 million words per year
Improved Cognitive Function: Reading can help reduce mental decline in old age by up to 32%.
Better Sleep: 50% of people who read before bed report better sleep.
Can I switch plans later?
Yes, you can easily switch between plans.
Is it easy to cancel?
Yes, it's just a couple of clicks. Simply go to Manage Subscription in the upper-right menu.
Save 62%
Yearly
$119.88 $44.99/yr
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.