Développement .Net (C# & ASP.NET) GIN4204
Enseignant:
Email:
Durée totale du cours: 45 H
Option concernée : Ingénierie logicielle
Semestre : 4
Nombre de crédits : 2
| Modules
spécialisés |
Modules de
base |
Sciences et techniques de
l’ingénierie |
Préparation à la carrière professionnelle |
| X |
| Nombre d’heures | Activités hors classe | ||
| 22.5 | 18 | ||
| cours | TD | TP | |
| 11 | 11.5 | 22.5 | |
Code : GIN4204 Développement .Net (C#)
Volume Horaire : 1h30 cours & 1h30 Travaux pratiques (par semaine)
Objectifs d’apprentissage et compétences visées
L’objectif principal de ce cours de développement C# est de bien apprendre les concepts orientés
objets et l’accès aux données avec Entiy Framework :
- Apprendre à manipuler Visual Studio, l’outil de travail du développeur C#.
- Pratiquer les concepts orientés objets (héritage, encapsulation, polymorphisme, …).
- Créer de programmes de différents types (Console, Bureau, Web, …).
- Travailler avec les délégués et les événements.
- Accéder aux données avec Entity
- S’initier à l’utilisation du concept du multithreading
Contenu du cours
- Introduction à la programmation C#
- Framework .Net (CLR, CLS, BCL, CIL, …)
- Types de données (CLS)
- Structures de contrôle : décision, répétition et récursivité
- Points divers : tableaux, procédures, fonctions, passage de paramètres, …
- Gestion des exceptions : .catch
- Programmation Orientée Objet
- Classes, objets, valeurs et références : structures et allocation de mémoire
- Encapsulation : modificateurs d’accès et propriétés
- Héritage : classes abstraites/sealed et Cast entre des types
- Polymorphisme : virtual/abstract, override, virtual et new
- Présentation des interfaces
- Méthodes d’extension et indexeurs
- Délégués et Evénements
- Les délégués : principe de base, délégués génériques (Action, Func et Predicate)
- Expression Lambda, Méthode anonyme et Méthode locale
- Les événements : Editeur (publisher) et Abonné (subscriber)
- Présentation des applications de bureau et web
- Applications Windows Forms/WPF : Conception et modèle d’événement et MDI
- Services Windows : Création d’un service Windows
- Développement d’applications ASP.NET : modèle d’événement, cycle de vie d’une page ASP, …
- Hébergement Web IIS : services IIS et Déploiement d’applications Web
- Développement de services Web : SOAP, WSDL, Services Web
- Accès aux données avec EntityFramework
- Les collections : List, Stack, Queue, Dictionary, …
- ORM – Entity Framework : Database first, Entity Data Model, DbContext et Code first
- LINQ – Language Integrated Query : Requêtes et méthodes Linq
- Threads en .Net
- Le concept du multithreading
- Passer des paramètres au Thread
- Les threads avec Windows Forms
Méthodes d’enseignement et d’apprentissage
- Enseignement frontal avec des exemples à résoudre en
- Travaux pratiques (laboratoire)
- Travaux à faire à domicile (mini-projet, exposé, compte-rendu, …)
Connaissances et compétences pré-requises
- Algorithmique et Structures de Données + Programmation C
- Programmation Orientée Objet
- Bases de données
Références bibliographiques
- Un polycopié (Notes du cours) de l’enseignant sera
- Autres références sous forme de tutoriaux, manuels ou documents à télécharger
- Les recommandations bibliographiques suivantes doivent être considérées :
- Microsoft Official Academic Course, « Notions fondamentales sur le développement logiciel », John Wiley, 2012
- Tiberiu Covaci, Gerry O’Brien, Rod Stephens et Vince Varallo, « MCSD Certification Toolkit (Exam 70-483) », Wrox, 2013, ISBN:
- Jérome HUGON, « C# 6, Développez des applications Windows avec VS 2015 », Edition ENI, 2015, ISBN : 978-2-7460-9700-1.
Modalité d’évaluation
- 100% Travaux pratiques (mini-projet avec présentation orale, examen TP, compte-rendu, …)
Résultats d’apprentissage
A l’issue de ce cours, l’étudiant sera capable de :
- développer des applications Web professionnelles et des services Web capables de traiter et de manipuler des données.
- Empaquetez et déployez des applications Web ASP.NET MVC 5 à partir d’un environnement de développement vers un serveur Web pour la mise en scène ou la production.
- Développer et tester des applications ASP.NET professionnelles qui accèdent aux données d’une base de données relationnelle telle que SQL Server et les modifient à l’aide de sources de données SQL et/ou de sources de données d’objets et de contrôles de serveur Web appropriés.
- Concevoir l’architecture et la mise en œuvre d’une application Web qui répondra à un ensemble d’exigences fonctionnelles, d’exigences d’interface utilisateur et de modèles commerciaux.