Evolution MM

Formations à l'informatique
Découvrez la différence ENI

Lien accueil

Téléchargez le Calendrier des formations

Nantes, Rennes, Niort, Nice, Paris

Juin à Décembre 2017

Rechercher
Rechercher une formation
 

Les fondamentaux du développement .NET avec le langage C# 7 sous Visual Studio 2017 (action collective FAFIEC "Evoluer vers le développement objet" réf. 26852)

ENI Service a été retenue par le FAFIEC dans le cadre de l'action collective de formation "Evoluer vers le développement objet .NET et Java". Si vous êtes salarié d'une entreprise cotisant au FAFIEC, vous pouvez bénéficier d'une prise en charge à 100% du coût de cette formation.

Dans cette formation, vous apprendrez la syntaxe du langage C# ainsi que la mise en œuvre de tous les concepts de la programmation orientée objet. Vous apprendrez également à utiliser les principales classes du Framework .NET et à utiliser l'environnement de développement Visual Studio 2017 pour la conception et la mise au point de vos applications.

Public :

  • Développeurs, analystes programmeurs, chefs de projets.

Objectifs :

  • Utiliser les outils de Visual Studio 2017 pour créer des projets de développement ;
  • Ecrire des programmes en langage C# 7 ;
  • Mettre en œuvre les concepts de la programmation orientée objet avec le langage C# 7 ;
  • Utiliser les principales bibliothèques de classes du Framework .NET ;
  • Manipuler les collections d'objets du Framework .NET ;
  • Gérer les erreurs et de surveiller le fonctionnement des applications ;
  • Utiliser LINQ to Objects pour requêter sur des grappes d'objets ;
  • Déboguer le code C# et réaliser des tests unitaires sur vos classes ;
  • Optimiser l'exécution des programmes en paralléliser l'exécution des traitements.

Pré-requis :

  • Avoir une expérience de programmation, quel que soit le langage d'origine ;
  • Avoir développé et livré une application en autonomie ou en équipe ;
  • Idéalement, avoir suivi la formation " T4ACF-0 - La conception orientée objet " ou posséder les connaissances et compétences équivalentes.

Contenu pédagogique

Introduction à la plateforme de développement .NET

  • Présentation du Framework .NET
    • La bibliothèque de classes
    • La CLR et l'exécution du code managé
    • Compilation et notions d'espace de nom et d'assemblage
  • Présentation de Visual Studio 2017
    • Les différents types de projets
    • Les principales fenêtres : l'explorateur de solutions, l'affichage de classes, propriétés
    • Le contrôle de code source
  • Savoir utiliser MSDN pour la documentation des bibliothèques de classes du Framework .NET

Les éléments de base du langage C#

  • Les commentaires
  • Les types de données
  • Les variables et les constantes
  • Les littéraux numériques (nouveauté C# 7.0)
  • Les opérateurs
  • L'opérateur nameof (nouveauté C# 6.0)
  • Les structures conditionnelles et itératives
  • Les procédures et les fonctions
  • Les fonctions locales (nouveauté C# 7.0)
  • Les fonctions avec valeur de retour multiple (nouveauté C# 7.0)
  • Les valeurs de retour de type référence (nouveauté C# 7.0)
  • Les membres sous forme d'expression (nouveauté C# 6.0)
  • Paramètres nommés et optionnels
  • Le type String
  • L'interpolation de chaine de caractères (nouveauté C# 6.0)
  • Travaux pratiques : Calcule du jour de Noël en fonction d'une année.

Programmation orientée objet en C#

  • Les classes
  • Les attributs, les propriétés
  • Les initialiseurs de propriétés automatiques (nouveauté C# 6.0)
  • Les constructeurs et le destructeur
  • Les méthodes sous forme d'expression (nouveauté C# 7.0)
  • Les déconstructeurs (nouveauté C# 7.0)
  • Création et suppression d'objet
  • Propagation de la valeur "null" (nouveauté C# 6.0)
  • Le garbage collector
  • Les membres et les imports statiques (nouveauté C# 6.0)
  • Les méthodes d'extension
  • Les espaces de nom
  • Le concepteur de classes de Visual Studio

Héritage et polymorphisme

  • L'héritage
  • Le polymorphisme
  • Classes et méthodes abstraites
  • Les interfaces
  • Classes et méthodes scellées
  • Le pattern matching (nouveauté C# 7.0)
  • Travaux pratiques : Réalisation progressive d'une application de gestion de compte bancaire avec conception des classes : Compte, CompteEpargne, Client, Banque.

Générique et collections

  • La création et la manipulation de génériques
  • Les Listes
  • Les interfaces "IComparable" et "IComparer"
  • Les Dictionnary
  • Les initialiseurs de dictionnaires (nouveauté C# 6.0)
  • Les autres collections (Stack, Queue, …)
  • Travaux pratiques : Intégration de la classe List dans la classe Compte et de la classe Dictionary dans la classe Banque.

Gestion des erreurs et surveillance des applications

  • La levée et le traitement d'exceptions
  • Les filtres d'exceptions (nouveauté C# 6.0)
  • L'expression throw (nouveauté C# 7.0)
  • La finalisation de traitement
  • Le traçage d'applications
  • La gestion de " Log "
  • Travaux pratiques : Mise en œuvre de la gestion des erreurs dans la classe Compte et la classe Banque.

Les aspects avancés du langage

  • Les délégués et les méthodes anonymes
  • Les expressions lambdas
  • La surcharge d'opérateurs
  • La gestion de la mémoire
  • La réflexion
  • Le typage dynamique
  • Travaux pratiques : Mettre en place la gestion d'évènement dans la classe Compte lors d'un débit impossible.

LINQ to Objects

  • Présentation
  • La création et l'exécution de requêtes LINQ
  • L'inférence de type
  • Les types anonymes et la classe Tuple
  • Les opérateurs de requêtes LINQ
  • Travaux pratiques : Compléter la classe Banque avec des méthodes de recherche de compte basées sur la mise en œuvre de LINQ.

Prise en main du débogage dans Visual Studio 2017

  • Les propriétés du projet et les paramètres du gestionnaire de configurations
  • Les configurations de " build " Debug et Release
  • Génération du code : examen de la liste des erreurs et correction
  • Analyse statique du code : correction ou refactorisation du code
  • Débogage du code en cours d'exécution : définir les points d'arrêt simples ou conditionnels et inspecter le code en cours d'exécution (inspecteur des variables, espions, pile d'appel…)
  • Travaux pratiques : Débogage de l'application Banque en utilisant des points d'arrêts, l'exécution en mode pas à pas et en inspectant les variables du programme.

Réalisation de tests unitaires dans Visual Studio 2017

  • Intérêts et objectifs des tests unitaires
  • Générer un projet de tests unitaires et des méthodes de test à partir du code de l'application
  • Créer le projet de test unitaire et les tests unitaires manuellement
  • Implémentation des méthodes de test : le modèle AAA (Arrange, Act, Assert)
  • Exécuter les tests unitaires dans l'explorateur de tests et analyse des résultats
  • Travaux pratiques : Mettre en place différents tests unitaires au sein de votre application Banque.

Amélioration de la performance des applications

  • La mise en œuvre du multitâche
  • La création et lancement de tâches
  • La réalisation d'opérations asynchrones (await, async)
  • Généralisation du type de retour (nouveauté C# 7.0)
  • La synchronisation d'accès concurrent aux données
  • Travaux pratiques : Intégrer dans la banque des traitements de recherche de Compte en asynchrone.