Advanced search
Catalogs >> Information and Communication Sciences and Technologies >> Computer Sciences
Teaching coordinator :

Valérie Roy

Level : Graduate

Course Language : French

Term : Spring

Number of hours : 37

ECTS Credits : 2
SGS_MP1324 ATHENS - MP01 - The C++ language
Objective: C++ has become the unavoidable standardized industrial language. It combines the main qualities of high-level object-oriented languages with the effectiveness of low-level languages. As with all applications involving execution time and memory space constraints, it allows implementation of software requiring direct manipulation of material targets (operating systems, peripheral drivers, networks, etc.) while providing expressiveness, re-utilization, maintenance, simplicity of development, testing facility, management of major projects, scale transition, written code stability and portability.
C++ is a general purpose language. Having been used intensively in many fields, it has now become possible to use it efficiently in applications that involve a wide variety of disciplines: networks, numerical calculations, graphic applications, user interfaces, etc.
C++ is one of the reference languages for Open Source free software.
C++ is one of the main languages used in the industrial world, and which every future engineer needs to know if he/she wishes to be involved in the various fields related to information and communication technologies.

Programme: The course will deal comprehensively with all of the language constructions. Aside from practical work, emphasis will be placed on learning the language itself, outside any integrated programming environment, so that the mechanisms of compilation, link editing, debugging and execution are adequately understood. A demonstration will also be made of an integrated programming environment in order to highlight specificities and differences.
The limited number of students admitted to this course will ensure that it can be adapted to the level of each student both in the presentations as well as in practicals by offering exercises of varying difficulty.
The course will be illustrated by a lecturer from industry, an engineer working for Renault, who has chosen C++ for the programming of large-scale applications. He will describe the industrial approach to designing, joint managing and developing large quantities of C++ code.
  • the re-utilizability and generic potential (for reducing development costs: object-oriented mechanisms, template classes);
  • controlled access (separation of specification and implementation);
  • broad typology and polymorphism (for detecting errors in the development cycle as early as possible: structures and classes, simple and multiple derivation, overloading of functions and operators, etc.);
  • exception mechanisms for managing errors at the execution stage;
  • memory management (static memory, execution battery, dynamic memory, overloading of allocation and disallocation operators);
  • utilization of STL, a standardized library of C++ classes and functions;
  • utilization of the C++ language standard.

Requirements : Basic notions of programming and computer science. According to student demand, we will (re-)examine the various notions which they may not have fully grasped.

Evaluation mechanism : Programming project with a choice of various subjects according to the course themes which the students wish to explore more fully.

Last Modification : Saturday 11 December 2010

© Mines de Paris 2018 - Developed by Winch Communication