Apprends C# 12 avec Visual Studio Code et .NET 8 (2023-2024)
- Descrição
- Currículo
- FAQ
- Revisões
BIENVENUE DANS LE COURS SUR C# ET .NET
Le langage C# est un des langage les plus populaires aujourd’hui. Être développeur C#, c’est avoir la garantie de trouver facilement une mission ou un poste car la demande sur le marché est forte (je suis moi-même indépendant en C# et je n’ai jamais manqué de mission).
Dans cette formation, nous prendrons le taureau par les cornes afin d’apprendre le langage C# depuis 0, et ce même si vous n’avez aucune connaissance préalable en programmation ! La seule chose qu’il suffit d’avoir est un ordinateur et de la volonté.
Ainsi, le 1er module du cours sera destiné à préparer votre environnement. Que vous soyez sous Windows, Mac ou Linux importe peu car dans les modules fondamentaux, nous utiliserons .NET 6 et Visual Studio Code, qui sont compatibles avec n’importe quel système d’exploitation.
Dans le 2nd module, nous étudierons ensemble des fondamentaux du langage, comme par exemple :
-
La différence entre une variable et une constante
-
L’aspect “fortement typé” du langage
-
Les opérations basiques avec les types numériques, chaîne de caractères et booléens
-
Les branches de codes conditionnelles
-
La gestion basique des erreurs
Dès le 3ème module, nous découvrirons le paradigme de la programmation orientée objet (POO) :
-
Qu’est ce qu’une classe et comment en créer une
-
Les avantages de la POO
-
Les portées existantes en C#
-
L’héritage, les interfaces, les méthodes abstraites et virtuelles
A partir du 4ème module, nous commencerons à voir des notions complémentaires, comme :
-
Les notions avancées sur les if (pattern matching & switch)
-
Les notions avancées sur les try catch (type d’erreur, filtres, rethrow, exceptions personnalisées)
-
La classe de base Object et ce qu’elle apporte
-
La valeur spéciale null et comment la gérer
Le 5ème module vous permettra de découvrir les prémices de la programmation réseau avec C#. Ainsi, vous verrez :
-
Comment ouvrir un socket en lecture et en écriture
-
Envoyer et décrypter un flux réseau entre deux applications C#
-
La création de A à Z d’un système de chat client/serveur pour mettre en pratique
Le 6ème module introduira une partie majeure du framework .NET : LINQ. Ce système permet de requêter des collections en mémoire comme s’il s’agissait de base de données, et bien plus. En détails :
-
Ce qu’est l’interface IEnumerable<T>, comment elle fonctionne et comment l’implémenter par soi-même
-
Les méthodes d’extensions
-
Les types anonymes
-
Les fonctions LINQ basiques : Select, Where, OrderBy, Any/All
Dans le 7ème module, nous verrons la sérialisation en .NET, notamment :
-
Ce qu’est la sérialisation et à quoi ça sert
-
La sérialisation en XML, avec XmlReader/Writer et XDocument
-
La sérialisation en JSON, avec Utf8JsonReader/Writer et JsonSerializer
-
Un aperçu de la sérialisation en gRPC pour la communication client serveur
Le 8ème module nous emmène dans la gestion des données avec Sql Server, plus précisement :
-
Installation Sql Server sous Docker sur un poste de développeur
-
Faire de l’écriture de données avec ADO .NET
-
Lire les données avec ADO .NET
-
Utiliser la classe DataTable pour récupérer des données ou faire des insertions en masse (bulk insert)
-
Présentation du micro-ORM Dapper
-
Présentation de l’ORM Entity Framework Core
Pour le 9ème et dernier module, nous allons compléter les notions de ce cours avec un ensemble de concepts importants pour faire des programmes C# robustes et modulaires :
-
Les interfaces (en POO)
-
Static (avec les mises à jour C# 11)
-
Les delegates & event
-
L’asynchronisme
-
La gestion des fichiers/dossiers
Pour ceux qui souhaitent parfaire leurs compétences, un module sera dédié aux challenges, et on découvrira ensemble une plateforme permettant de réaliser des challenges de codes que l’on résoudra ensemble.
Le programme est vaste et varié ! Il y aura également des mises à jour constantes du cours pour s’adapter aux dernières nouveautés en vigueur ou prendre en compte les différentes remontées faites par les apprenants.
Je vous attends de l’autre côté pour découvrir ce langage puissant !
-
1Ce cours vous intéresse ? Vous pouvez l'avoir moins cher !Texto
-
2Rejoins nous sur le serveur Discord !Texto
-
3Encore plus de contenu !Texto
-
4Qu'est ce que le langage C# ?Vídeo Aula
-
5Vidéo importante : Les différentes technologies .NETTexto
-
6Vidéo complémentaire : Comment fonctionne .NET (JIT, CLR, AOT)Texto
-
7De quoi avons-nous besoin ? Installer l'IDE Visual Studio CodeVídeo Aula
-
8Installer & configurer l'extension C# Dev Kit + résolution des soucisVídeo Aula
-
9Comment créer, compiler et lancer une application C# ?Vídeo Aula
-
10Vérifiez vos connaissances !Questionário
-
11Anatomie d'une instruction C# (avec exercice)Vídeo Aula
-
12Anatomie C#Questionário
-
13Qu'est ce qu'une variable ?Vídeo Aula
-
14Qu'est ce qu'une constante ?Vídeo Aula
-
15Affecter une variable par appel de méthode (avec exercice)Vídeo Aula
-
16Variable VS constanteQuestionário
-
17Zoom sur les types numériquesVídeo Aula
-
18Zoom sur les types textuelsVídeo Aula
-
19Encore + plus sur les chaînes (avec exercice)Vídeo Aula
-
20Les types de baseQuestionário
-
21Les opérateurs : numériques et chaînes (avec exercice)Vídeo Aula
-
22Les opérateurs produisant des booléensVídeo Aula
-
23Les opérateursQuestionário
-
24Conversion d'un type à un autre (avec exercice)Vídeo Aula
-
25Branche de code avec les instructions if/else (avec exercice)Vídeo Aula
-
26Les opérateurs : booléens (avec exercice)Vídeo Aula
-
27If et opérateurs de booléensQuestionário
-
28Collections : les tableauxVídeo Aula
-
29Collections : les listesVídeo Aula
-
30Les collections de baseQuestionário
-
31Les boucles : for (avec exercice)Vídeo Aula
-
32Les boucles : while (avec exercice)Vídeo Aula
-
33Les boucles : foreach (avec exercice)Vídeo Aula
-
34Les bouclesQuestionário
-
35La gestion des erreurs : try-catch (avec exercice)Vídeo Aula
-
36Try/catchQuestionário
-
37Les bases de la programmation orientée objetVídeo Aula
-
38Notion de blocs en C#Vídeo Aula
-
39Les méthodes de classe (avec exercice)Vídeo Aula
-
40Instanciation d'une classe (avec exercice)Vídeo Aula
-
41Membre/champ et propriété (avec exercice)Vídeo Aula
-
42Le constructeur (avec exercice)Vídeo Aula
-
43POO - BasesQuestionário
-
44L'héritage (avec exercice)Vídeo Aula
-
45Polymorphisme et pattern matching (avec exercice)Vídeo Aula
-
46Classe abstraite et méthode abstraite (avec exercice)Vídeo Aula
-
47Les différentes portées (avec exercice)Vídeo Aula
-
48POO - Concepts avancésQuestionário
-
49Les interfaces (avec exercice)Vídeo Aula
-
50Static (avec exercice)Vídeo Aula
-
51Type valeur VS type référenceVídeo Aula
-
52Exercice : sécurisation du code pour éviter les erreurs NULLVídeo Aula
-
53Les types valeur nullableVídeo Aula
-
54Découvrons la classe mère : System.Object (avec exercice)Vídeo Aula
-
55Comparaison entre deux objets (avec exercice)Vídeo Aula
-
56L'instruction switch (avec exercice)Vídeo Aula
-
57L'expression switch (avec exercice)Vídeo Aula
-
58Renvoyer une exception (avec exercice)Vídeo Aula
-
59Try-Catch avancé (avec exercice)Vídeo Aula
-
60Notions complémentairesQuestionário
-
65Introduction aux principes réseauVídeo Aula
-
66Bases du fonctionnement serveur (avec exercice)Vídeo Aula
-
67Échange de données client/serveurVídeo Aula
-
68Création du clientVídeo Aula
-
69Amélioration du clientVídeo Aula
-
70Amélioration du serveurVídeo Aula
-
71Gestion côté serveur de la fermeture du socketTexto
-
72Programmation réseauQuestionário
-
73Introduction au TPVídeo Aula
-
74Corrigé TP : partie clientVídeo Aula
-
75Corrigé TP : partie serveurVídeo Aula
-
76IEnumerable<T> (avec exercice)Vídeo Aula
-
77IEnumerable<T> (2) (avec exercice)Vídeo Aula
-
78Méthodes d'extension (avec exercice)Vídeo Aula
-
79Objets anonymesVídeo Aula
-
80Opérateur Select (avec exercice)Vídeo Aula
-
81Opérateur Where (avec exercice)Vídeo Aula
-
82Opérateurs Any et All (avec exercice)Vídeo Aula
-
83Opérateurs OrderBy (avec exercice)Vídeo Aula
-
84LINQQuestionário
-
85Conclusion du moduleVídeo Aula
-
86Allez plus loin avec LINQTexto
