Programmation C#

L'objectif de ce cours est d'enseigner les arcanes de la programmation objet en C#, sous la plate-forme Microsoft .NET. On s'attend à ce que l'étudiant ait déjà de bonnes connaissances en programmation procédurale et objet, quel que soit le langage (delphi, java, c++, autres...).

Plusieurs thèmes sont étudiés :

(1) initiation au langage C#, revisiter la programmation procédurale et objet via la création d'applications console ;
(2) approfondir la programmation objet en C# : la notion de classes, l'héritage, le polymorphisme, visibilité des champs et méthodes, l'encapsulation, classes abstraites et interfaces ;
(3) modélisation des applications via la norme de description UML (diagramme de classes UML <-> architectures de classes C#) ;
(4) la programmation visuelle en C#, la construction interfaces graphiques pour des applications stand-alone tournant sous Windows, les principaux éléments du GUI (Graphic User Interface - fenêtres, boutons, menus, boîtes de dialogues, etc.) ;
(5) les techniques de programmation avancée (threads, collections, sérialisation, ...) ;
(6) la programmation client-serveur, les accès aux bases de données.

Ce cours est dispensé en M2 Informatique.

Ressources - Programmation C#

Ressources
EDI : SharpDevelop -- The Open Source Development Environment for .NET
Slides pour le cours
Les bases de C-Sharp. Rappel des bases de programmation. Notions d'algorithmie, découpage des programmes en procédures et fonctions, introduction à l'EDI SharpDevelop.
Tableaux et collections. Tableaux et collections d'objets sous C-Sharp, accès aux données, la boucle foreach.
Mécanismes de classes - I. Déclaration des classes, instanciation, constructeur, destructeur, l'encapsulation, l'héritage, le polymorphisme, les listes polymorphes.
Mécanismes de classes - II. Les interfaces, les classes génériques, les méthodes statiques.
Applications multifenêtres. Formulaires, boîtes de dialogue. Fenêtres modales et non modales.
Vidéos pour le cours
Création d'une application console. SharpDevelop, création d'une nouvelle solution, création d'un projet "Application Console", fichier ".cs", compilation, exécution. Ajout de projets supplémentaires dans une solution.
Interface graphique - Application mono-fenêtre. SharpDevelop, création d'une "Windows Application". Manipulation des Windows Forms. Formulaire principal. Programmation des gestionnaires d'évènements. Les différentes fichiers qui composent un projet.
Interface graphique - Application multifenêtres. SharpDevelop, création d'une "Windows Application". Manipulation des Windows Forms. Formulaire principal, formulaires d'affichage, boîtes de dialogue. Pilotage des fenêtres qui composent un projet.
Supports de cours et aide en ligne
Cours C# - Serge Tahé (Chap 1 : Les bases du langage C# ; Chap 2 : Classes, Structures, Interfaces ; Chap 3 : Classes .NET d'usage courant ; Chap 4 : Architectures 3 couches, tests unitaires NUnit, framework Spring.net ; Chap 5 : Interfaces graphiques ; Chap 6 : Evénements utilisateur ; Chap 7 : Accès aux base de données ; Chap 8 : Threads d'exécution ; Chap 9 : Programmation Internet ; Chap 10 : Services Web).
La plate-forme .NET avec C# 2.0 - RM Di Scala (Eléments de base en C# ; C# est très orienté objet ; Construire des IHM avec C# ; Eléments spécifiques depuis la version 2.0 de C# ; Programmation web avec ASP.net).
MSDN - Aide en ligne pour les classes .NET (entres autres pour le langage C#)..
Les Tutoriels C# (Les meilleurs cours et tutoriels de la rubrique .NET : les tutoriels C# - Avec moteur de recherche)
Les forums C# sur developpez.com
Autres supports
C# (C-Sharp) sur Wikipedia
Parallèle entre les différents langages de programmation
Cours UML

Ricco Rakotomalala