Programmation Orientée Objet en C# – Concepts Avancés
Domaine : Informatique
Objectifs pédagogiques
Manipuler les subtilités de la programmation C#
Adapter la gestion de la mémoire à son besoin
Développer avec le multithreading et les instructions asynchrones
Intégrer des tests dans son développement
Niveau requis
Garantir avoir les les connaissances équivalentes à la formation “Programmation Orientée Objet en C#”
Développer avec les principes de la programmation orientée objet
Public concerné
Développeurs ainsi qu’aux chefs de projets informatique
Chargés de développement d’applications informatiques
Moyens pédagogiques et techniques
Salles de formation (les personnes en situation de handicap peuvent avoir des besoins spécifiques pour suivre la formation. N’hésitez pas à nous contacter pour en discuter) équipée d’un ordinateur de dernière génération par stagiaire, réseau haut débit et vidéo-projection UHD Documents supports de formation projetés Apports théoriques, étude de cas concrets et exercices Mise à disposition en ligne de documents supports à la suite de la formation
Dispositif de suivi de l'éxécution de l'évaluation des résultats de la formation
Feuilles d’émargement (signature électronique privilégiée) Evaluations formatives et des acquis sous forme de questions orales et/ou écrites (QCM) et/ou mises en situation Questionnaires de satisfaction (enquête électronique privilégiée)
Les formateurs intervenants pour Themanis sont qualifiés par notre Responsable Technique Olivier Astre pour les formations informatiques et bureautiques et par Didier Payen pour les formations management.
Conditions d’accès à la formation
Délai : 3 mois à 1 semaine avant le démarrage de la formation dans la limite des effectifs indiqués.
Le langage C# est le langage objet phare de Microsoft. Il permet de développer tout type d'application (client lourd, web, api REST, ...). Maîtrisez-le pour solutionner les problématiques et défis rencontré dans le développement de logiciels complexes.
Mise à jour le 11/12/2021
Les fonctionnalités avancées de C#
Méthodes anonymes et expressions lambda
Les fonctions locales
Les tuples
Les déconstructeurs
Pattern matching
Nouveautés syntaxique de C# 9
Garbage Collector
Algorithme de nettoyage du Garbage Collector
Ressources managées vs non managées
Bien libérer les ressources
Pattern IDisposable
Améliorer l’utilisation de la mémoire
Introduction
Concept de « tas » et de « pile »
La classe « Span »
Multithreading
Présentation de la programmation parallèle
Architecture d’un programme multi-threads
Méthodes de gestion des threads
Cycle de vie d’un thread
Les threads et les pools de threads
Amélioration de la performance des applications et des temps de réponse
Mettre en oeuvre le multitâche en utilisant les tâches et les expressions Lambda
Réaliser des opérations asynchrones
Synchroniser l’accès concurrent aux données
Le Parallel Programming
Paralléliser les instructions
Paralléliser les boucles
Intégration des Tests Unitaires
Démarrage rapide
Créer des projets de test unitaire
Créer des méthodes de test
Écrire les tests
Exécuter des tests dans l’explorateur de tests
Organiser, coordonner et effectuer des cas de tests
Le bouchonnage
Problématique
Inverser la dépendance
Limitations
Présentation des Mocks
Le langage C# est le langage objet phare de Microsoft. Il permet de développer tout type d'application (client lourd, web, api REST, ...). Maîtrisez-le pour solutionner les problématiques et défis rencontré dans le développement de logiciels complexes.