Logan MAUZAIZE | Devoxx

Logan MAUZAIZE Twitter

From MonkeyPatch

Amateur de Java avant le diplôme, j'ai distribué mes conseils lors de mes missions (expert technique, dev leader) et sur les forums. Notamment sur Developpez.com, sur lequel je fais partie de l'équipe Java à la fois en tant que modérateur mais aussi rédacteur.

lang Langages alternatifs

Atelier Rust

Hands-on Labs

Rust est un langage conçus pour la programmation système, tout en utilisant des constructions haut niveau. Il se focus sur:

  • performance: Un langage low level sans garbage collector mais pas de gestion mémoire manuelle.
  • productivité: Multi-paradigme, inférence des types, pattern matching, généricité, macro
  • sûreté: Eliminer des bugs liés à la mémoire pour être safe à runtime.

Rust s’est montré comme une bonne alternative pour construire des services systèmes, et remplacer les extensions natives en C de différents langages dynamiques par du code sûr et lisible. Et se place aujourd'hui comme le langage pour web assembly et pour la création de services web qui demande de la performance.

Venez découvrir Rust par vous-même avec des explications détaillées et des exercices pas-à-pas et concret.

NOTE IMPORTANTE ! Afin d'offrir la meilleure expérience pour tout le monde, il est nécessaire de venir avec un environnement prêt ! Pour cela, veuillez suivre les instructions ici : https://github.com/loganmzz/rust-installation

lang Langages alternatifs

Demain j'arrête le café, je me mets au crabe !

Conference

Le but étant de faciliter le démarrage sur le langage Rust pour des personnes utilisant des langages haut niveau comme Java/Js. Dans cette présentation nous découvrirons:

  • Le Langage (3 piliers)
    • Productivité : API fonctionnelle, pas de gestion manuelle de la mémoire sans GC, typage fort, inférence de type
    • Performance : Compilation native avec LLVM, ∅GC, langage bas niveau
    • Sûreté : sûreté de la mémoire, pas d’accès concurrent
  • Features présentées :
    • struct / trait / generics
    • ownership / borrowing / lifetime
    • memory guarantees : Box / Arc
    • macro
  • L'Écosystème :
    • IDE, tests, debugger, RLS
    • Build et packages manager (Cargo)
    • Librairies phares (Rayon, Rocket, Nom)
TBA : To be announced / Salle non affectée