Programmation Orientйe Objets en C++

VIII-iиme  SEMESTRE 

Volume horaire – contrфle des connaissance
Cours : 3 heures / semaine, 42 heures / semestre
Travaux pratiques : 2 heures / 2 semaine, 28  heures / semestre
Deux attestations au cours du semestre et а la fin - l’examen (par йcrit).

Objectif du cours:
La programmation orientйe objets (POO) est indispensable aux spйcialistes modernes des technologies informatiques. L’objectif essentiel est que les йtudiants apprennent ce style de programmation, qu’ils comprennent ses avantages par rapport aux styles antйrieurs de programmation  et qu’ils puissent concevoir des applications dans le langage C++.

Mйthodes :
Les cours thйoriques alternent avec les travaux pratiques et de laboratoire. Les travaux pratiques sont destinйs au traitement approfondi de certains aspects concrets de POO du langage C++. Les travaux de laboratoire servent а utiliser en pratique les connaissances acquises et aident les йtudiants а apprendre la POO en C++.

Rapport avec les autres matiиres:
Les bases informatiques acquises pendant les premiиres annйes d’enseignement sont indispensables. Il est aussi nйcessaire la connaissance du langage C. 
Le langage C++ avec son style de programmation orientйe objets permet l’йlaboration des logiciels de toute proportion et complexitй pour toutes les branches de l’йconomie et de la science.

Programme:
Classes et abstraction de donnйes. Dйfinition de classes. Portйe de classe et accиs aux membres d’une classe. Contrфle de l’accиs aux membres. Pointeur this. Constructeurs. Destructeurs. Membres de classes static. Fonctions friend. 
Surcharge des opйrateurs. Fondements sur la surcharge des opйrateurs. Restrictions de la surcharge des opйrateurs. Fonctions des opйrateurs comme membres de classe et comme fonctions friend. Surcharge d’opйrateurs unaires. Surcharge d’opйrateurs binaire. Surcharge des opйrateurs [], =, () , ->. Itйrateurs. Conversion entre types.
Hйritage. Classes des base et classes dйrivйes. Hйritage public, protected et private. Emploi de constructeures et de destructeurs dans des classes dйrivйe. Hйritage multiple. 
Polymorphisme. Fonctions virtuelles. Classes polymorphiques. Fonctions virtuelles pures. Classes abstraites. Liage dynamique.
Flux d’entrйe-sortie en C++. Flux. Flux de sortie. Flux d’entrйe. Entrйes-sorties non formatйes. Manipulateurs de flux. Etats du format de flux. Etats d’erreurs de flux.
Modиles. Modиles de fonction. Surcharger des fonctions de modиle. Modиles de classes. Modиles et hйritage. Modиles et amis. Modиles et membres statiques.
Traitement des exceptions. Lancement d’une exception. Capture d’une exception. Relancement d’une exception. Spйcifications d’exceptions. Exceptions et hйritage.
Gestion de fichiers.
La bibliothиque de modиles standard (STL).
Ajouts au langage C++ normalisй ANSI/ISO.