Nos formations

Mise à niveau pour les développeurs C# et Java (2 jours)

Mise à niveau pour les développeurs C# et Java (2 jours) Image

Accessible aux personnes en situation de handicap

Windows 8 a relancé l’intérêt du langage C++ auprès de développeurs pratiquant le C# et Java. Sur la base de vos connaissances objets, ce cours vous assurera une transition douce vers le C++ 11. Vous apprendrez comment C++ et sa librairie standard permettent d’écrire du code efficace et robuste pour vos applications.

 

Objectifs pédagogiques

PROGRAMME DE FORMATION

  1. Rappel des concepts de base du développement C++
  2. Présentation des concepts C++ avancés
  3. Librairie standard : la BCL de C++
  4. Syntaxe C++ avancée
  5. C++ et l’interopérabilité

 

PROGRAMME DE FORMATION

1. Rappel des concepts de base du développement C++

  • Les différents fichiers sources (.h, .cpp…).
  • Linkage et compilation de code écrit en C++.
  • Ecriture de classes et structures : la syntaxe de base.
  • Réutilisation de composants déjà compilés : .lib, .dll, .h etc.

Travaux pratiques
Création d’une solution multi-projets en C++, avec linkage statique et dynamique.

2. Présentation des concepts C++ avancés

  • Instanciation « statique » versus instanciation « dynamique » d’objets.
  • Les différents types de constructeurs (par défaut, par copie…).
  • Gestion de la mémoire sans garbage collector (manuellement ou en utilisant les smart pointers de la librairie standard).
  • Héritage multiple : cas pratiques et pièges à éviter.
  • Les Templates.
  • Orientation objet et comparaison avec C#.

Travaux pratiques
Atelier de manipulation des smart pointers de la librairie standard.

3. Librairie standard : la BCL de C++

  • Représentations mémoires possibles d’une chaîne de caractère et manipulation avec std::string et std::wstring.
  • Introduction à la stl (standard template library).
  • Containers et itérateurs, les collections C++.

Travaux pratiques
Atelier de manipulation de chaînes de caractères et de collections en C++.

4. Syntaxe C++ avancée

  • Inférence de types et mot-clef automatique.
  • Orientation fonctionnelle du langage : Lambdas, Functors… et utilisation avec la stl.
  • Asynchronisme et parallélisation avec C++ 11.
  • Utilisation d’objets COM Microsoft, avec et sans smart pointers.

Travaux pratiques
Exercice d’introduction à la parallel platform library, et manipulation d’expressions Lambda. Cas pratique de consommation d’objets COM, illustration avec Direct 2D.

5. C++ et l’interopérabilité

  • Publication d’objets COM Windows réutilisables.
  • Interopérabilité avec .Net sur le Desktop : C++ CLI.
  • Interopérabilité avec .Net et JavaScript dans les applications Metro : C++ / CX.

Travaux pratiques
Création d’une application métro hybride C# / Xaml + C++ / Direct 2D.

Mise à niveau pour les développeurs C# et Java (2 jours)

Mise à niveau pour les développeurs C# et Java (2 jours) Image

Accessible aux personnes en situation de handicap

Windows 8 a relancé l’intérêt du langage C++ auprès de développeurs pratiquant le C# et Java. Sur la base de vos connaissances objets, ce cours vous assurera une transition douce vers le C++ 11. Vous apprendrez comment C++ et sa librairie standard permettent d’écrire du code efficace et robuste pour vos applications.

 

Objectifs pédagogiques

PROGRAMME DE FORMATION

  1. Rappel des concepts de base du développement C++
  2. Présentation des concepts C++ avancés
  3. Librairie standard : la BCL de C++
  4. Syntaxe C++ avancée
  5. C++ et l’interopérabilité

 

PROGRAMME DE FORMATION

1. Rappel des concepts de base du développement C++

  • Les différents fichiers sources (.h, .cpp…).
  • Linkage et compilation de code écrit en C++.
  • Ecriture de classes et structures : la syntaxe de base.
  • Réutilisation de composants déjà compilés : .lib, .dll, .h etc.

Travaux pratiques
Création d’une solution multi-projets en C++, avec linkage statique et dynamique.

2. Présentation des concepts C++ avancés

  • Instanciation « statique » versus instanciation « dynamique » d’objets.
  • Les différents types de constructeurs (par défaut, par copie…).
  • Gestion de la mémoire sans garbage collector (manuellement ou en utilisant les smart pointers de la librairie standard).
  • Héritage multiple : cas pratiques et pièges à éviter.
  • Les Templates.
  • Orientation objet et comparaison avec C#.

Travaux pratiques
Atelier de manipulation des smart pointers de la librairie standard.

3. Librairie standard : la BCL de C++

  • Représentations mémoires possibles d’une chaîne de caractère et manipulation avec std::string et std::wstring.
  • Introduction à la stl (standard template library).
  • Containers et itérateurs, les collections C++.

Travaux pratiques
Atelier de manipulation de chaînes de caractères et de collections en C++.

4. Syntaxe C++ avancée

  • Inférence de types et mot-clef automatique.
  • Orientation fonctionnelle du langage : Lambdas, Functors… et utilisation avec la stl.
  • Asynchronisme et parallélisation avec C++ 11.
  • Utilisation d’objets COM Microsoft, avec et sans smart pointers.

Travaux pratiques
Exercice d’introduction à la parallel platform library, et manipulation d’expressions Lambda. Cas pratique de consommation d’objets COM, illustration avec Direct 2D.

5. C++ et l’interopérabilité

  • Publication d’objets COM Windows réutilisables.
  • Interopérabilité avec .Net sur le Desktop : C++ CLI.
  • Interopérabilité avec .Net et JavaScript dans les applications Metro : C++ / CX.

Travaux pratiques
Création d’une application métro hybride C# / Xaml + C++ / Direct 2D.