C# : Programmation orientée objet
Résumé
Concevoir un modèle objet robuste et évolutif avec C#, au moyen de patrons de conception.
Objectif
A l’issue de la formation, le stagiaire saura mettre en œuvre :
- Fondamentaux du langage C#
- Organisation de la plateforme .NET
- Utilisation de Visual Studio et de son débuggeur
- Déclaration de classes, d’interfaces et de délégués
- Exploitation des types génériques et des collections de données
- Usage de UML et des patrons de conception usuels
Public concerné
Les développeurs professionnels ou les étudiants avec une expérience en programmation, en C# ou avec d’autres langages structurés ou objets (Python, C, C++, Java…).
Le stagiaire doit avoir acquis les fondamentaux de la programmation structurée (flot de contrôle, fonctions, structures de données). Une expérience avec un environnement de développement intégré (Visual Studio, Eclipse…) est conseillée.
Contenu
Partie 1 : Programmation structurée
Cette partie comprend des rappels introductifs.
Prise en main de la plate-forme .NET :
- Architecture de la plate-forme
- Langages de programmation compatibles
- Environnements de développement
- Historique
Programmation structurée en C# :
- Fonctions globales, fonctions locales
- Structures de données
- Passage par valeur, passage par référence
- Flot de contrôle : blocs conditionnels, boucles, sauts, exceptions
Modularité :
- Bibliothèques .NET
- Compatibilité entre versions de .NET
Partie 2 : Programmation orientée objets
Les classes :
- Déclaration et instanciation d’une classe
- Champs, méthodes, propriétés et indexeurs
- Héritage de classe
- Niveaux d’accessibilité des membres
- Membres statiques, méthodes d’extension
- Surcharge d’opérateur
- Opérateurs d’égalité, enregistrements
Les interfaces :
- Déclaration et implémentation d’une interface
- Héritage d’interface
- Implémentation de plusieurs interfaces, résolution de conflits de noms
- Méthodes et propriétés par défaut
Membres virtuels et classes abstraites :
- Déclaration et substitution
- Composition versus héritage
- Membres statiques abstraits d’interface
Délégués et évènements :
- Déclaration et utilisation de délégués
- Expressions lambdas
- Déclaration d’un évènement
- Résolution de problèmes de fuite de mémoire
Partie 3 : Généricité et collections de données
Types génériques :
- Déclaration et instanciation
- Contraintes de type génériques
- Covariance et contravariance
Méthodes génériques :
- Déclaration et appel
- Inférence de type
Collections génériques :
- Classes usuelles : tableau statique, tableau dynamique, dictionnaire…
- Parcours d’une collection
- Programmation d’un itérateur
Partie 4 : Patrons de conception
Généralités :
- Origine des patrons de conception
- Classification
- Syntaxe UML
Patrons de conception usuels avec leur implémentation :
- Singleton
- Fabrique (Factory Method)
- Stratégie (Strategy)
- Observateur (Observer)
- Monteur (Builder)
- Adaptateur (Adapter)
- Façade (Facade)
- Etat (State)
Modalités
Mode d’intervention
En sous-traitance auprès des instituts de formation certifiés Qualopi, en inter- ou intra-entreprise.
Le programme présenté est adaptable à un besoin spécifique après audit.
Travaux pratiques
L’ensemble de la formation s’articule à parts égales entre exposés techniques, démonstrations en direct et travaux pratiques.
Le stagiaire reçoit durant la formation les supports d’exposé ainsi que le code source des démonstrations et solutions de travaux pratiques.
Moyens techniques
La formation est proposée en vidéo-conférence. Le stagiaire doit s’équiper du matériel et du logiciel nécessaire.