Fiches de cours 2016-2017

PDF
 

Programmation et conception orientées objets

ENG-209

Enseignant(s) :

Vachoux Alain
Zysman Eytan

Langue:

Français

Retrait

Il n'est pas autorisé de se retirer de cette matière après le délai d'inscription.

Résumé

Introduction des éléments essentiels de la programmation et de la conception orientée objets avec C++ à partir des connaissances de programmation C acquises en première année. Mise en oeuvre dans une application de simulation utilisant des logiciels libres (Eclipse, Doxygen, XML, gnuplot).

Contenu

Introduction

Présentation du cours: contexte, objectifs, organisation (définition des binômes), travail pratique, évaluations.

Introduction à C++

Nouveautés et changements par rapport à C. Premiers éléments de programmation orientée objet (de struct à class). Types de classes, rôle des classes. Eléments de conception orientée objet. Conteneurs STL (string, vector). Flots d'entrée-sortie. Exceptions.

Introduction aux outils logiciels

Environnement de développement Eclipse C++. Documentation avec Doxygen. Structuration des données avec XML. Génération de graphes avec gnuplot.

Application pratique (mini-projet guidé)

- Phase 1: Infrastructure de base. Conception d'une architecture de classes. Développement et test d'une application générique réalisant tous les mécanismes requis au moyen d'acteurs simples.

- Phase 2: Spécialisation de l'application. Développement et test des acteurs spécifiques à l'application par réutilisation et extension des acteurs simples.

- Phase 3: Finalisation de l'application. Paramétrisation de l'application pour des cas d'utilisation réalistes. Tests et vérifications fonctionnels.

Présentation orale du projet.

Mots-clés

Programmation orientée objet. C++. Développement de projet logiciel.

Compétences requises

Cours prérequis obligatoires

Programmation I (CS-11c) et II (CS-112c).

Cours prérequis indicatifs

Information, Calcul, Communication (IN-110c).

Concepts importants à maîtriser

Langage de programmation C. Usage du système d'exploitation Linux.

Acquis de formation

A la fin de ce cours l'étudiant doit être capable de:

Compétences transversales

Méthode d'enseignement

Ex-cathedra. Exercices pratiques sur ordinateur. Mini-projet guidé avec vérification des étapes.

Travail attendu

Lecture et compréhension des notes de cours et des documents fournis en plus des transparents présentés en séance.
Résolution d'exercices avec support en séance ou de manière autonome.
Mini-projet en binôme. Réalisation d'une application C++ de complexité moyenne, complète et fonctionnelle. Présentation orale du travail effectué.

Méthode d'évaluation

Présentation orale du mini-projet (25%), version finale (phase 3) de l'application (75%).

Encadrement

Office hours Non
Assistants Oui
Forum électronique Oui

Ressources

Bibliographie

B. Stroustrup, Programming -- Principles and Practice Using C++, Addison-Wesley, 2009.

B. Stroustrup, The C++ Programming Language, 4th ed., 2013.

J.-C. Chappelier, F. Seydoux, C++ par la pratique, PPUR, 3ème éd., 2012.

S. Meyer, Effective C++: 55 Specific Ways to Improve Your Programs and Designs, 3rd ed., Addison-Wesley, 2005.

Ressources en bibliothèque
Polycopiés

Notes de cours.

Sites web
Liens Moodle

Préparation pour

Projets en cycles Bachelor et Master.

Dans les plans d'études

    • Semestre
       Automne
    • Forme de l'examen
       Pendant le semestre
    • Crédits
      2
    • Matière examinée
      Programmation et conception orientées objets
    • Cours
      1 Heure(s) hebdo x 14 semaines
    • Projet
      1 Heure(s) hebdo x 14 semaines
  • Passerelle HES - EL, 2016-2017, Semestre automne
    • Semestre
       Automne
    • Forme de l'examen
       Pendant le semestre
    • Crédits
      2
    • Matière examinée
      Programmation et conception orientées objets
    • Cours
      1 Heure(s) hebdo x 14 semaines
    • Projet
      1 Heure(s) hebdo x 14 semaines

Semaine de référence

 LuMaMeJeVe
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15     
15-16     
16-17     
17-18     
18-19     
19-20     
20-21     
21-22     
En construction
 
      Cours
      Exercice, TP
      Projet, autre

légende

  • Semestre d'automne
  • Session d'hiver
  • Semestre de printemps
  • Session d'été
  • Cours en français
  • Cours en anglais
  • Cours en allemand