Entity Framework Core en action
Entity Framework Core en action
Résumé :
Introduction
Le livre « Entity Framework Core in Action » (en traduction française — « Entity Framework Core en action ») de Jon Smith est l’un des guides les plus complets et pratiques pour travailler avec le framework ORM populaire de Microsoft. Publié en 2021 (deuxième édition couvrant la version EF Core 5), ce livre de 617 pages est destiné aux développeurs C# qui souhaitent maîtriser les approches modernes d’interaction avec les bases de données dans l’écosystème .NET.
Jon Smith est un expert reconnu d’Entity Framework, auteur de nombreux articles et contributeur à des projets open-source. Son style d’écriture se distingue par sa clarté, son souci du détail et son orientation vers des scénarios réels. Cette critique vous aidera à comprendre s’il vaut la peine d’investir du temps dans l’étude de cet ouvrage et quels avantages pratiques vous en retirerez.
De quoi parle ce livre ?
Le livre couvre l’ensemble du cycle de vie du travail avec Entity Framework Core : de la configuration initiale et de la création de modèles à l’optimisation des performances et au déploiement en environnement de production. L’accent est mis sur la version EF Core 5, mais de nombreux concepts s’appliquent également aux versions plus récentes.
L’auteur guide le lecteur à travers les sujets clés de manière progressive :
- Les bases d’EF Core : ce qu’est un ORM, comment configurer le contexte de base de données, la connexion à différents SGBD (SQL Server, PostgreSQL, SQLite).
- Création du modèle de données : approches Code-First et Database-First, fluent API, annotations de données, relations un-à-plusieurs, plusieurs-à-plusieurs et héritage.
- Requêtes LINQ : plongée approfondie dans la syntaxe, filtrage, projection, chargement des données associées (Eager Loading, Explicit Loading, Lazy Loading).
- Migrations : gestion des modifications du schéma de base de données, création et annulation de migrations, travail avec plusieurs environnements.
- Performances : analyse des requêtes SQL générées, utilisation d’AsNoTracking, traitement par lots, mise en cache, pool de connexions.
- Tests : tests unitaires avec le fournisseur in-memory et SQLite, objets mock.
- Sujets avancés : travail avec les procédures stockées, requêtes SQL brutes, filtres globaux, propriétés fantômes, configuration pour les microservices.
À qui s’adresse ce livre ?
Le livre s’adresse aux développeurs ayant déjà une expérience de base avec C# et .NET, mais souhaitant approfondir leurs connaissances en matière d’accès aux données. Il sera utile aussi bien aux débutants qui commencent tout juste à découvrir EF Core qu’aux spécialistes expérimentés qui migrent depuis Entity Framework 6.x ou d’autres ORM (par exemple, NHibernate).
Le livre présente une valeur particulière pour :
- Les développeurs backend ASP.NET Core créant des applications web et des API.
- Les développeurs migrant des projets de .NET Framework vers .NET Core/.NET 5+.
- Ceux qui souhaitent comprendre les mécanismes internes d’EF Core pour optimiser les requêtes.
- Les équipes mettant en œuvre des pratiques d’intégration continue et de tests.
Que va apprendre le lecteur ?
Après avoir lu ce livre, vous serez capable de :
- Configurer EF Core dans un projet de toute envergure — d’une application console à une architecture de microservices.
- Concevoir correctement un modèle de données en utilisant toutes les possibilités du fluent API et des annotations.
- Écrire des requêtes LINQ efficaces en évitant les erreurs typiques qui entraînent une baisse de performance.
- Gérer les migrations de base de données en équipe, résoudre les conflits et appliquer les migrations en production.
- Tester le code interagissant avec la base de données sans avoir à déployer un SGBD réel.
- Optimiser les performances : identifier les goulots d’étranglement à l’aide du profileur, utiliser la mise en cache et le traitement par lots.
- Travailler avec des scénarios non triviaux : héritage, relations complexes, procédures stockées.
Points forts du livre
La première chose qui frappe est l’orientation pratique. Chaque
Recommendations
Réseaux de neurones. Bases
Réusinage de code JavaScript (Node.js) : du chaos à l'architecture propre
Développement d'API en Swift : Création de services REST et GraphQL pour iOS/macOS
Microservices. Modèles de développement et de refactoring
Programmation parallèle en C++ avec MPI et OpenMP
C# 10 in a Nutshell