loader image

Gate Training

logo-png
.NET

Formation C# 8, Développer en .NET 4.7 avec Visual Studio 2019

5 Jours

Description de la formation C# 8 en .Net Core

Ce cours sur le langage C# 8 et le framework .NET vous permettra de maîtriser les fondamentaux et la syntaxe du langage C# en utilisant l’environnement de programmation Visual Studio 2019. S’appuyant sur des exemples concrets, la plateforme .NET Core vous sera également présentée afin de bien comprendre l’environnement global sur lequel repose le langage C#.

Objectifs

Objectifs Opérationnels:

Maitriser les fondamentaux de la dernière version du langage C#8 en .Net Core avec Visual Studio 2019.

Objectifs pédagogiques :

Concrètement, à l’issue de la formation C# 8 en .NET 4.7 / Core vous serez capable de :

  • Mettre en œuvre ce que vous aurez appris sur le développement objet (classe, méthode, héritage…)
  • Comprendre le rôle du framework .NET et savoir utiliser ses classes
  • Configurer et utiliser Visual Studio 2019
  • Programmer en langage C# 8 tout en disposant des bons réflexes
  • Maîtriser la syntaxe du langage C#8
  • Utiliser ADO.NET et LINQ pour accéder aux données d’une base et les manipuler
  • Créer des applications Windows riches en fonctionnalités avec WPF (ce chapitre présente de plus un intérêt pédagogique : héritage, delegate, etc.)
  • Utiliser les fonctionnalités avancées de C#8
  • Comprendre les nouveautés du Framework .NET 4.7/NET.Core et du langage C# 8

À qui s’adresse cette formation ?

Public :

Cette formation C# 6 / .NET 4.6 s’adresse aux Développeurs débutants, Développeurs maîtrisant la programmation via un autre langage, Développeurs d’applications d’entreprises.

 

Prérequis :

Pour suivre cette formation C# .NET 4.6, les participants doivent disposer des connaissances suivantes :
– Être familiarisés avec les fonctions de base d’un système d’exploitation et les maîtriser, notamment la manipulation des fichiers
– Maîtriser les notions de base de la programmation structurée, notamment des concepts de base (boucles, variables et paramètres, appels de fonctions…)
– Un minimum d’expérience en concepts de programmation orientée objet est préférable.

 

Contenu du cours C# 8 en .Net Core

Introduction à .NET et à Visual Studio 2019

Comprendre le vocabulaire et la philosophie des technologies .NET (WPF, ASP.NET, MVC, ADO.NET, Entity Framework)
Une évolution de .NET vers .NET Core
La place de C# dans l’architecture globale de .NET 4.7
Les différences entre C# et VB.NET
L’architecture détaillée de .NET (CLR, BCL, compilation Just In Time, etc.)
Les différentes familles d’applications .NET 4.7
Les différents projets proposés par Visual Studio 2019
Comparaison de C# avec d’autres langages (Java, C++…)

Travaux Pratiques :

Visite guidée de Visual Studio 2019 afin de prendre en main rapidement son environnement de travail

La programmation en C# 8

Le modèle Objet avec le langage C# 8
Classes et objets
Code managé et gestion de la mémoire
Héritage, surcharge et polymorphisme
Propriétés, indexeurs
Expression d’initialisation, types anonymes, propriétés automatiques, méthodes d’extension, méthodes partielles
Les Dynamic, Paramètres optionnels et paramètres nommés, Interopérabilité COM améliorée, Co et Contra variance
Les fonctions avancées de C# 8 : paramètres optionnels, résolution des types génériques, propagation de null, interpolation de chaîne…

Travaux Pratiques :

Création de classes en C# reprenant les concepts fondamentaux de ce chapitre et la syntaxe associée
Utilisation de ces classes par d’autres programmes

Les nouveautés du langage C# 8

Méthodes d’interface par défaut,
déclaration using
Utilisation des critères spéciaux avec is en c#8 et 9
Fonctions locales
expression-bodied
Types références Nullables
Les records
Utilisation des Tuples
Retour de fonction multiple et par référence
Construction et Déconstruction d’un objet
Pattern matching (correspondance de motifs)
Expressions switch
Les variables out
La notation binaire, Index et plages

Les classes incontournables du Framework .NET

Classes mathématiques, structures usuelles, gestion des dates
Gestion du formatage des chaînes
Filtrer l’information grâce aux expressions régulières
Conteneurs classiques : listes, listes triées, piles et tables de hachages

Travaux Pratiques :

Lister, trier, comparer et sélectionner des données grâce à la puissance du framework .NET

Les entrées / sorties

Maîtriser l’encodage des données à travers ses règles et ses formats (ascii, utf-8, etc.)
Exemples de problèmes couramment rencontrés (sauts de lignes, accents, etc.)
Convertisseurs de formats de texte
Notion de flux, FileStream / StreamWriter / StreamReader
Gestion des entrées/sorties synchrones/asynchrones

Travaux Pratiques :

Lire et écrire des données dans un fichier texte
Réencodage d’une page HTML

Les solutions d’acces aux données en C# 8

La nouvelle philosophie de LINQ
Lecture/Ecriture dans un fichier XML en utilisant LINQ To XML
Lecture/Ecriture de données en utilisant EntityFramework CodeFirst

Travaux Pratiques :

Manipuler les données d’une base de données vers un fichier XML en utilisant LINQ

La programmation avancée

Exceptions : gestion centralisée des erreurs, classes d’exceptions personnalisées, exceptions non- .NET
Délégués : délégués et évènements, expressions lambda
Utilisation des “Generics”
Appel synchrone et asynchrone, TPL (Task Parallel Librairie)

Travaux Pratiques :

Mettre en place des exceptions et des délégués dans une application .NET

Introduction à WPF

Présentation de WPF
Les types de controles
Les ressources
La philosophie de WPF, (notion ‘d’usine logiciel’)
Introduction a MVVM 

Travaux Pratiques :

Création de formulaires pour afficher les données récupérées dans les Travaux Pratiques sur ADO.NET

Application Web avec ASP.NET et C# 8

Qu’est-ce qu’une application ASP.NET ?
Principes des Web Services (REST ou RPC ?)
WebAPI et MVC
Introduction à une application portée en ASP.NET
C#, ASP.NET et le modèle MVC
Nouveautés introduites par .NET Core

Travaux Pratiques :

Utilisation de WebService pour alimenter une application WPF

Réf:

0019

Tarif:

600 Dt

Niveau:

Intermédiaire

Classe à distance:

Possible

Pas de sessions disponibles