C# programming

Today, coding is also about designing at the same time.  At the end of this course, the participant will be able to justify the choice of the characteristic used. This understanding and confidence in its selection is essential to properly develop an application. The participant will also be able to implement a complete project from A to Z reusing common components.  

Upcoming session

Guaranteed to run

No date suits you?

Notify me when a session is added.

  • Duration: 4 days
  • Regular price: $2,000
  • Preferential price: $1,860

Course outline

Langues d'enseignementCette formation peut être offerte en français et en anglais

Public concerné

Développeurs.

Préalables

Cours "Introduction au développement orienté-objet" ou la connaissance des concepts objet. Une expérience de C/C++, Java ou Visual Basic est un atout.

Objectifs

Ce cours de C# va au-delà de l'explication des nombreuses caractéristiques offertes par le langage. La majorité des livres, articles et formations traitent principalement du "comment" avec bien des exemples. C'est bien, mais on oublie le plus important : préciser "pourquoi" et "quand" l’on doit utiliser une caractéristique. Ces explications sont fondamentales :
  • pour bien comprendre "pourquoi" cette caractéristique a été intégrée dans le langage (sa raison d'être) et pourquoi elle contribue à résoudre telle problématique;
  • pour discerner "quand" cette dernière est utile pour régler et faciliter la solution à un problème.

Méthode pédagogique

Exposés - Démonstrations - Exercices dirigés et individuels.
La répartition du contenu est approximativement : matériel 35% et laboratoires 65%

Contenu

  • Bref historique de C#
  • Meilleures pratiques d'utilisation avec Visual Studio pour les solutions et les projets
  • Standardisation, soutien de plateformes, relations entre le C# et le CLR
  • Survol du Framework .NET
  • Concepts objet importants en C#
  • Classes, objets et espaces de nommage: utilisation des modificateurs d'accès et unités de compilation
  • Membres de classe et réutilisation: champs, méthodes, paramètres, utilisation de méthodes publiques, protégées, internes et privées
  • Déclaration de constructeurs, de champs en lecture seulement, de propriété, d'indexeur et de destructeur
  • Système de type unifié: référence, valeur, littéraux, conversions, emboîtage (Boxing) et désemboîtage (Unboxing)
  • Opérateurs et expressions: priorité et associativité
  • Instructions: bloc, sélection et itération
  • Chaînes, Tableaux, variables et paramètres
  • Passage d'arguments par valeur, par référence, avec nombre variable et avec arguments nommés
  • Variables locales implicitement typées et surcharge de méthodes
  • Collections et génériques
  • Réutilisation de classes : agrégation et héritage
  • Comparaison de l’agrégation et de l’héritage
  • Types avancés : Délégués (Delegates) et événements (Events)
  • Utilisation des inférences de délégué,
  • Utilisation des délégués pour les rappels (callback), les événements et les méthodes anonymes
  • Exceptions et gestion des erreurs: try-catch et finally blocs et lancement throw
  • Importance de la classe racine: pour la comparaison et le clonage d'objets
  • Classes abstraites et interfaces
  • Polymorphisme et accesseurs: surcharge (overload) vs redéfinition (override) de méthodes
  • Création de types valeur : structure (struct) et énumération (enum)
  • Expressions lambda et méthodes d'extensions
  • Programmation de fils d’exécution (threads)
  • Les états et les priorités d’un thread
  • Création, démarrage, réordonnancement et synchronisation des threads
  • Utilisation de la classe Monitor
  • Utilisation de classes d'entrées / sorties, fichiers, flux (Streams), attributs et sérialisation
  • Projet complet de A à Z réutilisant des composants communs avec interfaces console et graphique

Surround yourself with the best

Michel de Champlain
Michel de Champlain
Architect and Creator of the B# Language
Animated by a passion that captivates, stimulates and gets participants involved, Michel is an enthusiastic and authentic trainer.
Pierre-Edouard Brondel
Pierre-Edouard Brondel
Trainer and Desktop Application Consultant
Renowned as an educational expert in the IT and office technology field who has accumulated more than 25 years of experience, Pierre-Édouard is first and foremost passionate about human capital.
Marc Maisonneuve
Marc Maisonneuve
Trainer and Professional Efficiency Consultant
Frédéric Paradis
Frédéric Paradis
Certified Trainer and Cloud Architect
As a certified Microsoft trainer, Frédéric describes himself as a Cloud magician who easily navigates the mythical space between technology and reality.
Be aware of trends, innovations and best practices, every month.
Confidentiality
Training center accredited by Emploi-Québec, Accreditation : 0051460
GST : 141582528 – QST : 1019557738
© 2020 AFI
AFI Expertise

The AFI experience brought to you by Edgenda

At AFI, our focus is to offer you relevant training and impactful learning experiences in line with your transformation approach. Do you need support for your approach? Check out Edgenda’s services: Edgenda.com