Objectifs de formation
A l’issue de cette formation, vous serez capable de :
- Concevoir une application console basée en utilisant .NET 5.0
- Utiliser Visual Studio pour créer, déboguer et organiser vos projets
- Utiliser toutes les fonctionnalités du langage C#
- Pratiquer la programmation orientée objet.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Prérequis
Avoir des connaissances de base sur la programmation algorithmique (manipulation des instructions conditionnelles, boucles, tableaux...).
Public concerné
Développeurs ayant déjà une expérience dans la programmation.
Programme
Jour 1
Introduction
- Présentation et rôle du Framework .NET
- .NET Framework et .NET Standard
- Common Language Runtime (CLR)
- Les "assemblys"
- Compilation Just In Time (JIT)
- Common Type System (CTS)
- Le "garbage collector"
- Les différentes versions .NET
- Exécutables Dépendant du Framework (FDE)
- Exécutable monofichier
- Liaison d'assembly
- "Tiered" / "ReadyToRun" images
Exemple de travaux pratiques (à titre indicatif)
- Décompilation d'un assembly
Visual Studio
- Introduction
- Les différentes éditions de Visual Studio
- Concept de projet / solution
- Personnalisation des projets pour les applications .NET Core
- La gestion des packages avec NuGet
- Le débogueur
Exemple de travaux pratiques (à titre indicatif)
- Découverte de Visual Studio
Le langage C#
- Application console
- Vue d'ensemble des types communs
- Les chaînes de caractères
- Les instructions conditionnelles
- Les boucles
- Les exceptions
Exemple de travaux pratiques (à titre indicatif)
- Création d'une application console
Jour 2
L'héritage
- Concept de base
- Le polymorphisme
- Les opérateurs "is" et "as"
- Redéfinition des méthodes et des propriétés
- Appeler la méthode ou la propriété de la classe de base
- Les classes abstraites
- Les classes scellées
- Les interfaces
- La classe de base : "object"
Exemple de travaux pratiques (à titre indicatif)
- Utilisation de l'héritage
Les fonctionnalités avancées de C#
- Les délégués
- Les évènements
- "Object initializer"
- "Local variable type inference"
- Typage des tableaux implicites
- Les types anonymes
- Les méthodes anonymes
- Les expressions lambda
- Les méthodes d'extensions
- Les "generics"
- Les collections
- "Property / tuples patterns"
- "Positional patterns"
- Index et plages
- Types références nullables
Exemple de travaux pratiques (à titre indicatif)
- Utilisation des délégués, méthodes anonymes, expressions lambda et méthodes d'extensions
Jour 3
LINQ (Language Integrated Query)
- Introduction
- Les méthodes d'extensions LINQ
- Le langage LINQ intégré au C#
Exemple de travaux pratiques (à titre indicatif)
- Utilisation de LINQ
Quelques API du .NET Core
- Les flux
- L'encodage
- Les "BinaryReaders" et les "BinaryWriters"
- Les flux de caractères
- Concept de sérialisation
- Logger l'exécution de son application
Exemple de travaux pratiques (à titre indicatif)
- Lecture d'un fichier texte et écrit d'un fichier binaire
Jour 4
TPL (Task Parallel Library)
- Introduction
- Les threads
- La classe "Parallel"
- Les tâches
- "Parallel LINQ (PLINQ)"
- L'asynchronisme
- Les flux asynchrones
Exemple de travaux pratiques (à titre indicatif)
- Utilisation des bibliothèques de tâches
Accès aux données
- Introduction à Entity Framework
- Création d'un modèle
- Création d'entités
- Génération de la base de données
- Présentation de LINQ
- Manipulation de données avec LINQ to Entities
Exemple de travaux pratiques (à titre indicatif)
- Lecture et écriture dans une base de données SQL Server
Jour 5
Manipulation de données aux formats XML et JSON
- Introduction
- Lire un contenu JSON
- Générer un contenu JSON
- Lire un contenu XML
- Générer un contenu XML
- LINQ to XML
Exemple de travaux pratiques (à titre indicatif)
- Lecture d'un fichier XML en utilisant la désérialisation
Utilisation d'API Rest
- Introduction
- La bibliothèque HttpClient
Exemple de travaux pratiques (à titre indicatif)
- Consommation d'un Web Service pour récupérer la météo
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation.