Développement C++

Catalog of Télécom SudParis courses

Code

IGSF CSC 4526

Level

M1

Graduate

Graduate

Semester

Spring

Domain

Informatique

Program

Programme Ingénieur

Language

Français/French

ECTS Credits

4

Class hours

36

Workload

90

Program Manager(s)

Department

  • Informatique

Educational team

Organisation

Cours/TD/TP/projet/examen : 12/0/24/0/0

Learning objectives

A l'issue du module, les étudiants sont capables, dans le cadre d'une application interactive (qui peut être un jeu vidéo) de petite taille, mais réaliste de :
- développer cette application en C++ moderne (utilisation de RAII c'est-à-dire Resource Acquisition Is Initialization, de pointeurs intelligents), à l'aide de l'environnement de développement (IDE) Visual Studio, CLion ou VSCode,
- développer des tests unitaires dans le cadre d'une démarche Test-Driven Development (TDD),
- piloter une Intelligence Artificielle générative, partenaire de co-création de l'application,
- présenter et/ou critiquer de manière argumentée, en public, un travail réalisé.

CDIO Skills

  • 1.3 - Advanced engineering fundamental knowledge, methods and tools
  • 2.4.3 - Creative Thinking
  • 2.4.4 - Critical Thinking
  • 4.3.3 - System Engineering - System Modeling and Interfaces
  • 4.3.4 - Development Project Management
  • 4.5.3 - Software Implementing Process
  • 4.5.5 - Test, Verification, Validation, and Certification
  • 4.6.4 - System Improvement and Evolution
  • 4.7.7 - Exercising Project / Solution Judgment

Prerequisites

Langage C, programmation objet, UML

Keywords

Langage C++, environnement de développement, interfaces graphiques, bibliothèques tierces

Content

- Montrer les particularités du C++
- Comprendre les concepts et leur mise en œuvre syntaxique (notamment le C++ moderne)
- Comparaisons avec Java et C
- Micro-projet permettant de mettre en œuvre les connaissances acquises en cours

Evaluation

La présence en cours et la participation sont prises en compte dans l'évaluation.
La plupart des notions abordées dans cette UV sont approfondies lors d’un micro-projet. La validation de ce projet est basée sur l’appréciation du travail réalisé (incluant des tests unitaires) et d’une soutenance orale.
Note finale = note de micro-projet

Il n'y a pas de deuxième session.

References

Bjarne Stroustrup, Programming : Principles and practice using C++, 2nd edition, 2016
Stanley B. Lippman, Josée Lajoie and Barbara E. Moo, C++ primer 5th edition, 2012
Herb Sutter, More exceptional C++, 2002
Scott Meyers , effective STL, 2001
Herb Sutter, Exceptional C++, 2000

Pedagogical methods

L’acquisition des connaissances est assurée à l’aide d'un cours introductif (3 heures), de 9 séances de cours intégrés (3 heures chacune), d'un micro-projet mobilisant les connaissances vues en cours, et d'une soutenance finale (séance de 2x3 heures) permettant de commenter/argumenter le code réalisé.