Cette formation C# avec Visual Studio vous permettra d’acquérir les fondamentaux du langage C# tout en explorant l’écosystème .NET et l’environnement de développement Visual Studio.
A l'issue de ces 5 jours de formation, vous saurez :
- Utiliser un IDE pour créer vos applications dotnet core, dotnet 7.0, 8.0, 9.0, next
- Développer vos applications avec C# pour ajouter toutes les fonctionnalités de votre application
- Concevoir des architectures logicielles utilisant le framework dotnet
- Animer vos jeux vidéos avec le langage C#
- Et tester votre application !
Durant toute la formation, un projet fil rouge sera le guide de la formation. La théorie sera illustrée, expliquée, à travers le développement, pas à pas, du projet fil rouge.
Nous allons créer ensemble un jeu-vidéo avec C# (sans Unity3d ou bien godot engine) !
Cette formation s’adresse aux développeur·se·s souhaitant apprendre ou perfectionner leur maîtrise de C# et de la plateforme .NET pour concevoir des applications modernes et robustes.
Envie de découvrir le framework ASP.NET ?
Découvrez le framework ASP.NET MVC Core (9.0 et supérieur), afin de construire vos futures applications Web et services avec notre formation ASP.NET !
Les objectifs
- Comprendre les principes du développement objet (classe, méthode, héritage, etc.)
- Comprendre le rôle du framework .NET, du framework dotnet core, dotnet 5.0, 6.0, 7.0, 8.0, 9.0, et savoir utiliser ses classes
- Apprendre à utiliser l’outil de développement Visual Studio 2022 et Visual Code
- Maîtriser la syntaxe et les concepts du langage C#
- Utiliser ADO.NET, et EF Core et LinQ pour accéder aux données d'une base quelque soit leur provenance et les manipuler
- Tester des fonctionnalités avancées de C#
Pré-requis
- Maîtriser les notions de base de la programmation, notamment les concepts suivants : variables et paramètres et appels de fonction
- Un minimum d’expérience dans la programmation procédurale est préférable. Durant la formation, vous apprendrez les concepts de la programmation objet
- Ordinateur portable à apporter
Le programme de la formation C# avec Visual Studio
Jour 1 : Introduction à C# et à l’écosystème .NET
-
La plateforme .NET
- Principe et architecture de la plateforme .NET
- Architecture du framework .NET core
- Aperçu des différents types d'applications
- Structure d'une application .NET
- Outils et environnement de développement
- Langage de CIL
- principe du langage intermédiaire
- principe de la compilation JIT (Just In Time Compiler)
-
Syntaxe de base
- Espace de nom, types énumérés
- Types de données
- Common Type System
- rôle de la classe de base System.Object et transtypage
- Quelles différences entre les types valeur et types référence ?
- Syntaxe de base
- manipulation des tableaux
- instructions de contrôle de flux
- Méthodes à nombre d'arguments variables
- Surcharge d'opérateurs
- Notion d'attribut, et importance des métadonnées
- Nouveautés C# 7.0, 8.0, 9.0, 10, 11, 12, 13
Mises en pratique :
- Découverte des deux IDEs
- Préparation du projet du jeu vidéo, ajout des premières méthodes
Jour 2 : Programmation Objet, Collections et Tests
-
Programmation objet
- Notion de classes
- Attributs
- Visibilité
- private, public, protected, internal
- Héritage
- Polymorphisme
- Ajout des interfaces
- Principe SOLID
- Qualité logicielle, organisation de code
- Notion de classe générique, de classe abstraite
-
Utiliser les collections
- Découverte des collections
- Array
- ArrayList
- List
- Dictionary
- Parcourir une liste
- for, foreach, .foreach, enumeration, yield
- Découverte de LinQ
- from where select, order by
- Aller plus loin avec LinQ
- join, select amélioré, group by, agrégat
-
Tester avec C# et dotnet
- Test Unitaire, TDD, BDD : faire la différence
- Dummy, Fake, Stub, Mock : bien les utiliser
- Framework Test, NUnit, xUnit
Mise en pratique :
- Ajout de vos premières classes Player, Droide, pour commencer à animer le jeu
- Animation des droïdes dans le jeu, grâce aux collections
- On a oublié une partie importante : les tests ! Concevons une partie du projet avec les test unitaires, façon TDD
Jour 3 : Gestion des événements, des erreurs et des bibliothèques
-
Programmation événementielle
- Découverte des délégués
- Func, Action
- Découverte des événements : pattern Observer
-
Les exceptions
- A quoi sert une exception
- try catch finally
- Aller plus loin avec le pattern matching
- Générer des exceptions avec throw
- Exception custom
- Créer un code basé sur les exceptions
-
Utilisation des librairies
- Les DLLs, le COM, le COM+ : à quoi ça sert
- Utiliser une DLL locale à son PC
- Utiliser une DLL sur NuGet
- Créer sa bibliothèque de classe
- Notion de version
- Architecture de code avec les bibliothèques de classe
Mise en pratique :
- Pour éviter le découplage dans notre jeu, nous ajouterons un afficheur du jeu via les délégués et événements
- Refactorer notre code pour ajouter les exceptions dans la partie Player et Droide
- Déportation de nos classes dans une bibliothèque de classe
- Utilisation d'une bibliothèque Newtonsoft par exemple
Jour 4 : Optimisation du code
-
Des plus bien utiles
- Utiliser les méthodes d’extensions
- Utiliser les partials class
- Les var : bien ou mal ?
-
Se connecter à une base de données
- Les classes historiques
- DBConnection
- DbCommand
- DbAdapter
- Importance du provider, chaîne de connexion
- Arrivée d’entities framework
- Notion de context, découverte de l’ORM
- Création du context en model/class first
- Associer les tables / classes entre elles
- Requêtes sur le context avec LinQ
- Ajout, modification, suppression
Mise en pratique :
- Ajout d'une méthode d’extension à notre Player
- Utilisation de SQL server et/ou MySQL pour se connecter à la base de données pour sauvegarder notre jeu
Jour 5 : Créer des applications web et desktop
-
Découverte des possibilités
- Découverte succincte d’ASP.NET
- Découverte succincte de WPF
Mise en pratique :
- Création d’une application web asp.net sur une demi-journée
- Création d’une application WPF sur une demi-journée
Télécharger le programme
Le(s) formateur(s)
Evan BOISSONNOT
Du plaisir, du fun, avant tout passer un bon moment, c'est ce qui caractérise l'état d'esprit d'Evan tous les jours.
Passionné de code depuis plus de 20 ans, Evan a mis à profit sa passion en créant une entreprise de développement logiciel (durant 8 ans, avec 14 salariés).
Soucieux de la qualité logicielle, et adepte des démarches craftmanship, TDD et BDD, il a une vision agile et essaye de s’améliorer et progresser en permanence.
Ses amours fous : .net avec C# (ASP.NET Core), JavaScript, Angular, Node.js
Ses IDEs favoris : Visual Studio, Visual Studio Code
Ses découvertes du moment : React, Python (oui, faut pas mourir idiot quand même :=p)
Evan continue aujourd’hui à développer, pour lui, pour ses clients (audits, conseils, et réalisation).
Former est pour Evan une vocation : il aime transmettre et souhaite donner le goût de coder au plus grand nombre !
Voir son profil détaillé
3 témoignages
Formation très complète, qui par de la base pour remonter rapidement sur des concepts complexes tout en donnant des référence pour plus tard a...
Formation très complète, qui par de la base pour remonter rapidement sur des concepts complexes tout en donnant des référence pour plus tard afin de mieux les comprendre.
Mon seul conseil serait de l'aborder bien reposé !
Voir plus
Maxime RIGOT - Ubisoft Ivory Tower - 09.10.2023
Evan est un formateur à l'écoute, dynamique et très pédagogue .
Evan est un formateur à l'écoute, dynamique et très pédagogue .
Melvin DE MATTEIS - Ubisoft Ivory Tower - 09.10.2023
Excellent cours avec un professeur passionné et très compétent, je recommande chaudement!
Excellent cours avec un professeur passionné et très compétent, je recommande chaudement!
Jonathan DESPRAZ - Sonova / Phonak Communication AG - 09.10.2023
FAQ
Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié
Qualiopi, ce qui permet la prise en charge par des organismes comme
Pôle emploi, votre OPCO ou encore le
CPF (Compte Personnel de Formation) pour certaines formations.
Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?
Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.
Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)
Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.
Voici une journée type :
- 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
- 9h30 : la formation commence
- 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
- 14h : reprise de la formation
- 18h : fin de la journée
A propos de Human Coders
Human Coders c'est un centre de formation pour développeurs avec :
- une certification Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
- de nombreux clients qui nous font confiance depuis des années
- un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
- 166 formations au catalogue, 1643 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
- 99% des participants qui se disent satisfaits de nos formations
- la possibilité de vous proposer un accompagnement personnalisé, du conseil ou un suivi après la formation