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