L’objectif de ce workshop de formation de trois jours est de fournir à des développeurs professionnels les base du développement d’applications avec le langage C# et Visual Studio. Le matériel utilisé pour ce workshop est composé essentiellement de présentations, de démonstrations, et d’exercices dirigés (80% du temps).
Durée
3 jours.
Audience
Les participants doivent connaître la programmation d’application avec Visual Studio et avoir une expérience minimum en matière de programmation en C, C++, Visual Basic, Java ou autre langage de programmation.
A la fin du workshop
Après ce workshop, les participants seront à même de d’utiliser les structures du langage C# dans le cadre d’un développement en couche avec Visual Studio.
Langue d’intervention
La langue du workshop est le français.
Language de support
C#
Programme de formation
Module 1 : Vue d’ensemble de la plate-forme Microsoft .NET
Ce module présente les principaux éléments du .NET Framework et de décrire la place qu’occupe C# au sein de la plate-forme .NET.
- Présentation de la plate-forme .NET
- Vue d’ensemble du .NET Framework
- Avantages du .NET Framework
- Composants du .NET Framework
- Langages du .NET Framework
Module 2 : Vue d’ensemble de C#
À la fin de ce module, chaque stagiaire sera à même d’analyser la structure d’une application C# et de documenter, déboguer, compiler et exécuter une application simple.
- Structure d’un programme en C#
- Opérations élémentaires d’entrée/sortie
- Méthodes conseillées
- Compilation, exécution et débogage
Module 3 : Utilisation des variables de type valeur
Ce module présente la création et le nommage des variables, et comment leurs attribuer des valeurs.
- Système de types communs (CTS, Common Type System)
- Attribution de noms aux variables
- Utilisation de types de données intégrés
- Création de types de données définis par l’utilisateur
- Conversion de types de données
- Gestion des types Nullables
Module 4 : Instructions et exceptions
Ce module présente les instructions courantes permettant d’implémenter le contrôle de flux, le bouclage et la gestion des exceptions.
- Introduction aux instructions
- Utilisation des instructions conditionnelles
- Utilisation des instructions d’itération
- Utilisation des instructions de saut
- Gestion des exceptions fondamentales
- Levée d’exceptions
Module 5 : Méthodes et paramètres
Ce module se concentre sur la création des méthodes (fonctions et sous-routines) pouvant renvoyer des valeurs et prendre des paramètres.
- Utilisation des méthodes
- Utilisation des paramètres
- Utilisation de méthodes surchargées
- Méthodes Partielles
Module 6 : Tableaux
Ce module présente la création, l’initialisation et l’utilisation des tableaux.
- Vue d’ensemble des tableaux
- Création de tableaux
- Utilisation des tableaux
Module 7 : Notions fondamentales de la POO
Ce module d’explique les concepts fondamentaux et la terminologie de la programmation orientée objet.
- Classes et objets
- Utilisation de l’encapsulation
- C# et l’orientation objet
- Définition de systèmes orientés objet
Module 8 : Utilisation des variables de type référence
Ce module présente l’utilisation des objets et des types référence courants, la création, d’initialisation et la destruction des objets dans une application C#.
- Utilisation des variables de type référence
- Utilisation des types référence courants
- Hiérarchie des objets
- Espaces de noms du .NET Framework
- Conversion de données
- Utilisation de constructeurs
- Initialisation de données
- Initialiseurs, var (inférence de type)
- Objets et mémoire
Module 9 : Héritage dans C#
Ce module présente comment créer des classes C# à partir de classes existantes.
- Dérivation de classes
- Implémentation de méthodes
- Utilisation de classes scellées (Sealed)
Module 10 : Agrégation, espaces de noms et portée avancée
Ce module présente comment créer des classes autonomes et des architectures d’application dans une application C#.
- Utilisation de classes, de méthodes et de données internes
- Utilisation de l’agrégation
- Utilisation des espaces de noms
- Utilisation des modules et des assemblages
- Limitation de la portée et gestion de la mémoire
- Les classes partielles
Module 11 : Propriétés et indexeurs
Ce module présente comment implémenter des propriétés et des indexeurs.
- Utilisation des propriétés
- Utilisation des indexeurs
- Implémentation d’indexeur ( get {…} )
Module 12 : Notions avancées d’héritage dans C#
Ce module présente comment le concept d’héritage avancé, notamment l’utilisation de classe abstraite.
- Rappels, les classes, les listes
- Utilisation d’interfaces
- Utilisation de classes abstraites (Abstract)
- Le modificateur new, intérêt et utilisation
- Introduction aux opérateurs
- Création et utilisation de délégués
Module 13 : Les types génériques
Ce module explique la définition et l’utilisation de types génériques
- Introduction, intérêt et usage
- Ouvertures et fermetures des types
- Paramètres de types et contraintes
- Les classes génériques
- Les méthodes génériques
- Les listes et les collections génériques
- Développement de types génériques, intérêts
Module 14 : Les itérateurs
Ce module présente comment définir des itérateurs sur des objets.
- Introduction aux itérateurs
- Syntaxes et implémentation
- Développement de listes
- L’opérateur yied return
- Importance de l’approche ensembliste dans le développement des codes
- Impacts sur les performances du code
Module 15 : Notions avancées de C#
Ce module explique l’utilisation de notions avancées du langage C#.
- Utilisation des méthodes anonymes
- Utilisation des Predicate
- Action<T> et Func<TResult, T>
- Compréhension et développement
- Méthodes anonymes, predicate, expression lambda et fonctions
- Méthodes d’extensions
Module 16 : Utilisation des expressions LINQ
Ce module présente l’application et l’utilisation des expressions LINQ
- Méthodes d’extensions fournies par System.Linq
- Principe de l’assignation des requêtes, intérêts et limites
- Utilisation de LINQ et des itérateurs dans l’implémentation des solutions
- IEnumerable<T> vs List<T> : choix, impacts et performances
- Requêtage LINQ – utilisation, optimisation et limites
- Exemples de codes
Module 17 : Présentation des Architecture en couche
Ce module présente comment concevoir une architecture en couche
- Présentation des principes des couches
- Introduction aux fonctions des différentes couches
- Intérêts et impacts sur le code et la gestion des projets
- Modélisation des entités : principes, POCO et DTO
- Entités vs cycle d’analyse du projet
- L’architecture de référence : pourquoi ?
- Utilisation de boites à outils
- Les patterns de code
- Exemple de développement
Pour me contacter :
Bernard Fedotoff
+33 6 12 54 93 12
bfedotoff(at)agilcom.info ou bfedotoff(at)hotmail.com