Rust Professionnel 3/3

Cette formation Rust en 3 modules s'adresse aux développeurs ayant déjà une première expérience de la programmation fonctionnelle, qui souhaitent se construire une expertise avancée dans le langage Rust, qui joint à la fois performance et robustesse dans un seul langage, ce qui est en fait le langage de choix pour remplacer C et C++.

Ce troisième module complète les modules précédents en abordant la gestion du parallèlisme, l'un des points forts de Rust, ainsi que l'usage avancé des traits, l'écriture de macros procédurales, et l'interface avec le C au travers de l'interface unsafe.

Programme de la formation

Usage avancé des traits

  • Les types higher-kinded
  • Les traits objet et le dispatch dynamique
  • Les pointeurs de fonction

Les limites de durée de vie

  • Le problème des collections hétérogènes
  • La solution aux collections hétérogènes

Faire de la concurrence sans peur

  • Gestion de la mémoire avec Rc et Arc
  • Les traits Send et Sync
  • Les canaux et les messages
  • Les canaux asynchrones
  • Les verrous

Découvrir le coté unsafe de Rust

  • La puissance de l'unsafe
  • Les pointeurs directs
  • Les fonctions unsafe
  • L'implantation de traits unsafe
  • Sécuriser l'unsafe

Écrire une interface FFI pour Rust

  • Déclaration et utilisation de fonctions externes
  • Les fuites de mémoire
  • Une étude de cas sur la mauvaise gestion de la mémoire
  • Appeler Rust depuis le C
  • Une étude de cas sur l'appel de Rust depuis le C
  • La FFI

Écrire et utiliser des macros procédurales

Cas pratique complexe

Introduction complète à la concurrence sans peur et au traits avancés

Rust Professionnel 3/3

Durée: 1,5 jours Prix: 1500 EUR HT/pers Pratique: 50%
Prérequis
  • Prog. Fonctionnelle
  • Rust module 1
  • Rust module 2
Public
  • Développeurs
Objectifs Pédagogiques
  • Usage avancé des traits
  • Les limites de durée de vie
  • Faire de la concurrence sans peur
  • Découvrir le coté unsafe de Rust
  • Écrire une interface FFI pour Rust
  • Écrire et utiliser des macros procédurales
  • Cas pratique complexe

Adrien Champion (Rust)

Adrien est un développeur R&D senior chez OCamlPro depuis 2018 après avoir obtenu une thèse de doctorat et un post-doc au Japon. Adrien développe en Rust depuis les premières versions du compilateur Rust, et maintient plusieurs paquets open-source en Rust tel que hashconsing, rsmt2, zdd ou safe_index.

Évaluation des acquis

L'évaluation des acquis de la formation se fera en séance au travers d'ateliers, d'exercices et/ou de travaux pratiques. Dans le cas d'une formation officielle éditeur, veuillez nous consulter afin que nous vous fassions part des modalités d'évaluation.

A l'issue de la formation, vous sera transmis une évaluation à chaud de l'action de formation qui vous permettra de nous faire part de vos retours quant à votre expérience apprenant avec OCamlPro.

Prise en compte RQTH

Si vous êtes sujet à un handicap, prenez contact avec nos équipes pour que nous puissions définir ensemble comment nous pourrons aménager la session afin que vous puissiez vivre une expérience en formation inchangée.

Ressources pédagogiques

Les ressources pédagogiques sont produites par l'équipes OCamlPro en vue des formations. Les documents sont généralement en anglais, mais peuvent être traduits en français à la demande.

Financement en France

Nos formations ne sont pas éligibles au financement via OPCO (même si la prise en charge couvre la totalité du coût de la formation) en attendant la certification Qualiopi en cours. Non éligible au financement via CPF.

Formation en inter-entreprises

Les horaires pour nos formations inter-entreprises in-situ sont :

  • Début de la formation - 9h30
  • Pause déjeuner - 12h à 13h
  • Fin de la formation - 17h30