2015-09-atelier-cpp.rst 5.21 KB
Newer Older
Matthieu Boileau's avatar
Matthieu Boileau committed
1
2
3
Atelier |_| C++ |_| : les |_| bases du |_| 11 |_| et |_| du |_| 14
##################################################################

Benoit Fabrèges's avatar
Benoit Fabrèges committed
4
5
6
7
:date: 2015-06-02 15:23:39
:category: formation
:start_date: 2015-09-08
:end_date: 2015-09-10
Mathieu Haefele's avatar
Mathieu Haefele committed
8
:place: Besançon, France
Roland Denis's avatar
Roland Denis committed
9
:tags: c++
Benoit Fabrèges's avatar
Benoit Fabrèges committed
10
11
12
13
14
15
16
17
:summary: Atelier sur les bases de la programmation C++11 et 14 à Bensançon par Joel Falcou du 08/09/2015 au 10/09/2015.


.. contents::

.. section:: Description
    :class: description

18
    Fort du succès de l'atelier C++ d'avril à `Paris <2015-04-atelier-cpp.html>`_, le groupe Calcul (en partenariat avec le Laboratoire de Mathématiques de Besançon) propose une formation pour débutant en programmation C++11 et 14 les **8, 9 et 10 septembre 2015** à Besançon.
Benoit Fabrèges's avatar
Benoit Fabrèges committed
19
20

    L'intervenant principal est `Joël Falcou <https://www.lri.fr/~falcou/>`__ secondé (pour les TP) par `Florent Langrognet <https://lmb.univ-fcomte.fr/Florent-Langrognet>`__.
Matthieu Boileau's avatar
Matthieu Boileau committed
21

Benoit Fabrèges's avatar
Benoit Fabrèges committed
22
23
    L'unique prérequis pour ce cours est d'avoir des connaissances en programmation.

Benoit Fabrèges's avatar
Benoit Fabrèges committed
24
    La formation aura lieu dans la Salle A du `Centre Diocésain, 20 rue Mégevand, Besançon <https://www.espacegrammont.fr/>`__
Benoit Fabrèges's avatar
Benoit Fabrèges committed
25
26
27
28

    Les participants devront se munir d'un ordinateur portable.

    - Si l'ordinateur est sous linux : l'installation de g++ 4.8+ ou clang 3.4+ est nécessaire (et suffisante)
29
    - Sinon, les participants travailleront sur une machine virtuelle qu'il convient d'installer avant. 
Benoit Fabrèges's avatar
Benoit Fabrèges committed
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53


    Les supports de cours et de TP peuvent être téléchargés `ici <attachments/spip/IMG/zip/formation_base_cpp.zip>`__

    Des tutoriaux C++ sont aussi disponibles `ici <http://github.com/serge-sans-paille/land_of_cxx>`__

.. section:: Références
    :class: description

    - Sur le web :

        - http://fr.cppreference.com/w/ et http://en.cppreference.com/w/
        - http://herbsutter.com/

    - Livres :

        - "Programming: Principles and Practice Using C++" - Bjarne Stroustrup (2014)
        - "Effective C++", Scott Meyers (2014)
        - "C++ Concurrency", Anthony Williams (2012)
        - "Accelerated C++", Andrew Koenig (2000)

.. section:: Programme
    :class: programme

54
55
56
57
58
59
60
        .. schedule::

            .. day:: 08-09-2015

                .. event:: Introduction
                    :begin: 10:00
                    :end: 12:00
Mathieu Haefele's avatar
Mathieu Haefele committed
61
62
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)

63
64
65
66
67
68
69
70
71

                    - Historique du langage
                    - Pourquoi C++ ?
                    - L'héritage du C
                    - Normes et évolutions

                .. event:: Structures de base d'un programme C++
                    :begin: 14:00
                    :end: 15:30
Mathieu Haefele's avatar
Mathieu Haefele committed
72
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
73
74
75
76
77
78
79
80
81
82

                    - Types et variables
                    - Structures de contrôle
                    - Fonctions et procédures
                    - Processus de compilation
                    - Mise en pratique

                .. event:: Aspects impératif
                    :begin: 16:00
                    :end: 17:30
Mathieu Haefele's avatar
Mathieu Haefele committed
83
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
84
85
86
87
88
89
90
91
92
93
94
95

                    - Définir une fonction
                    - Paramètres, arguments et valeur de retour
                    - Inférence de type
                    - Gestion des erreurs
                    - Mise en pratique

            .. day:: 09-09-2015

                .. event:: Entrées/Sorties
                    :begin: 09:00
                    :end: 12:00
Mathieu Haefele's avatar
Mathieu Haefele committed
96
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
97
98
99
100
101
102
103
104

                    - Notions de flux
                    - Entrées et sorties standards
                    - Mise en pratique

                .. event:: La bibliothèque standard
                    :begin: 14:00
                    :end: 17:30
Mathieu Haefele's avatar
Mathieu Haefele committed
105
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
106
107
108
109
110
111
112
113
114
115
116
117
118

                    - Conteneurs
                    - Algorithme
                    - Fonctions mathématiques
                    - Dates et heures
                    - Expressions régulières
                    - Mise en pratique

            .. day:: 10-09-2015

                .. event:: Programmation orientée objets
                    :begin: 09:00
                    :end: 12:00
Mathieu Haefele's avatar
Mathieu Haefele committed
119
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
120
121
122
123
124
125
126
127
128
129

                    - Principes généraux
                    - Notion d'interface
                    - Héritage
                    - Principes de substitution de Liskov
                    - Mise en pratique

                .. event:: Gestion des ressources systèmes
                    :begin: 14:00
                    :end: 15:30
Mathieu Haefele's avatar
Mathieu Haefele committed
130
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
131
132
133
134
135
136
137
138
139

                    - Principe de la RAII
                    - Sémantique de valeur, sémantique d'entité
                    - Pointeurs à sémantique riche
                    - Mise en pratique

                .. event:: Programmation générique
                    :begin: 16:00
                    :end: 17:00
Mathieu Haefele's avatar
Mathieu Haefele committed
140
                    :speaker: Joël Falcou (LRI), Florent Langrognet (LMB)
141
142
143
144

                    - Fonctions génériques
                    - Structures génériques
                    - Mise en pratique
Benoit Fabrèges's avatar
Benoit Fabrèges committed
145