API REST avec .NET Core et C# pour développeurs Java
Dans un environnement technologique où l'interopérabilité et la performance des services sont cruciales, la maîtrise de différentes stacks de développement est un atout majeur pour les développeurs expérimentés. Cette formation intensive vise à doter les développeurs Java des compétences nécessaires pour concevoir et implémenter des API REST robustes et maintenables en utilisant l'écosystème .NET Core et le langage C#. Les stagiaires apprendront à architecturer des API RESTful avec ASP.NET Core, à gérer efficacement les requêtes HTTP, à sécuriser les échanges via l'authentification et l'autorisation JWT, et à interagir avec les bases de données grâce à Entity Framework Core. La formation inclut également l'initiation aux tests unitaires et d'intégration, ainsi qu'aux stratégies de déploiement sur des plateformes cloud telles qu'Azure. L'accent est mis sur les bonnes pratiques de développement pour garantir la qualité et la maintenabilité du code produit.
Maîtrisez C# et .NET Core pour créer des API REST robustes avec ASP.NET Core. Formation intensive pour développeurs Java.
Durée : 28 heures
Domaine : Développement
Objectifs pédagogiques
- Développer des API RESTful performantes et maintenables en utilisant ASP.NET Core et C#
- Configurer l'architecture ASP.NET Core, y compris les middlewares et le pipeline HTTP
- Sécuriser les API REST en implémentant des mécanismes d'authentification et d'autorisation basés sur JWT
- Gérer l'accès aux données et les opérations CRUD avec Entity Framework Core
- Réaliser des tests unitaires et d'intégration pour garantir la fiabilité des API
- Déployer et surveiller des API REST sur des plateformes cloud comme Azure
Technologies et outils
- C#
- .NET Core
- ASP.NET Core
- Entity Framework Core
- Visual Studio Code
- Visual Studio
- Azure
Public cible
Cette formation s'adresse aux développeurs Java expérimentés, aux architectes logiciels et aux développeurs back-end souhaitant étendre leurs compétences à l'écosystème .NET pour la création d'API REST performantes et sécurisées, en acquérant une expertise sur les technologies C# et .NET Core.
Prérequis techniques
- Expérience avérée en développement Java
- Connaissance des principes et du fonctionnement des API REST
- Familiarité avec les outils de développement (IDE, gestionnaire de versions)
Programme détaillé
Module 1 : Introduction à C# et .NET Core
- Présentation de la plateforme .NET Core et ses avantages pour le développement d'applications modernes
- Exploration de la syntaxe C# : types de données, variables, opérateurs, structures de contrôle, pour les développeurs Java
- Compréhension des concepts de programmation orientée objet en C# : classes, objets, héritage, polymorphisme, interfaces
- Prise en main des environnements de développement Visual Studio Code et Visual Studio pour le développement C#
- Travaux pratiques : Exercices de conversion de fragments de code Java vers C# pour faciliter la transition.
Module 2 : Fondamentaux d'ASP.NET Core
- Étude de l'architecture d'ASP.NET Core : le pipeline de requêtes HTTP et l'utilisation des middlewares
- Création et configuration d'un nouveau projet d'API REST ASP.NET Core
- Gestion de la configuration des applications et du système d'injection de dépendances
- Utilisation du serveur web Kestrel pour héberger des applications ASP.NET Core
- Travaux pratiques : Développement d'une API ASP.NET Core simple avec des points d'accès basiques.
Module 3 : Développement d'API REST
- Approfondissement des principes de conception d'API RESTful et des bonnes pratiques architecturales
- Implémentation de contrôleurs et d'actions pour gérer les requêtes entrantes dans ASP.NET Core
- Gestion des différentes méthodes HTTP (GET, POST, PUT, DELETE) pour les opérations CRUD
- Sérialisation et désérialisation de données au format JSON en utilisant la bibliothèque System.Text.Json
- Stratégies de gestion des erreurs et des exceptions pour des API robustes
- Travaux pratiques : Construction d'une API REST complète intégrant les opérations CRUD sur une ressource.
Module 4 : Modèles de données et accès
- Conception et implémentation de modèles de données en C# pour représenter les entités métier
- Introduction à Entity Framework Core, l'ORM officiel de .NET, pour l'accès aux bases de données relationnelles
- Configuration et utilisation d'un DbContext pour interagir avec une base de données
- Réalisation des opérations CRUD (Create, Read, Update, Delete) à l'aide d'Entity Framework Core
- Gestion des migrations pour l'évolution du schéma de base de données
- Travaux pratiques : Intégration d'Entity Framework Core à l'API REST pour persister et récupérer des données.
Module 5 : Sécurité des API REST
- Compréhension des concepts d'authentification et d'autorisation dans le contexte des API REST
- Implémentation de l'authentification et de l'autorisation basées sur les JWT (JSON Web Tokens)
- Mise en place de la sécurité basée sur les rôles pour contrôler l'accès aux ressources
- Techniques de protection contre les attaques web courantes telles que CSRF et XSS
- Gestion sécurisée des secrets et des clés de configuration d'application
- Travaux pratiques : Sécurisation de l'API REST développée avec l'intégration de JWT et la gestion des rôles.
Module 6 : Tests et Déploiement
- Conception et écriture de tests unitaires et d'intégration pour les API REST ASP.NET Core
- Utilisation de frameworks de test populaires comme xUnit ou NUnit
- Introduction à l'automatisation des tests dans un pipeline d'intégration continue/déploiement continu (CI/CD)
- Stratégies de déploiement des API REST sur des plateformes cloud, notamment Azure
- Mise en place de la surveillance et de la journalisation pour le suivi des API en production
- Travaux pratiques : Déploiement de l'API REST sur Azure App Service et configuration du monitoring.
Compétences acquises
À l'issue de cette formation, le stagiaire sera capable de concevoir, développer et sécuriser des API REST performantes avec ASP.NET Core et C#. Il maîtrisera l'intégration d'Entity Framework Core pour la gestion des données, saura implémenter l'authentification JWT et sera apte à déployer ses API sur des environnements cloud tels qu'Azure, lui permettant d'appliquer immédiatement ces compétences techniques dans des projets professionnels complexes.
Demander un devis