Manipulation de bytecode : démocratisons la magie


Comprendre le bytecode, sa manipulation, et se rendre compte que cela est fort utile.


Java ne se limite pas au langage éponyme : sa machine virtuelle est capable d'exécuter du bytecode produit par un très large panel de langages. Peu d'entre nous ont eu de bonnes raisons d'avoir à comprendre, générer ou transformer du bytecode Java. Il serait pourtant réducteur de limiter cette activité à une magie noire réservée aux créateurs de langages et de frameworks évolués. À titre d'exemple, la manipulation de bytecode est une des clés de voute de la simplification des modèles de programmation pour les plates-formes répandues que sont Java EE, Play! ou Spring.

Cette session s'adresse à un public de tous niveaux et a pour but non seulement de démystifier le bytecode Java, mais aussi de montrer en quoi cela peut être utile dans des cadres applicatifs plus classiques.

  • Bases du bytecode Java et de la JVM
  • Manipulation et applications avec : ASM, AspectJ et JBoss Byteman
  • Java 7 et invokedynamic
  • JooFlux : projet de recherche dévoilé pour toi cher public !


#TALK en Français

Julien Ponge

INSA Lyon, Red Hat Inc.

Maître de Conférences INSA Lyon Telecom, chercheur au laboratoire CITI-Inria, actuellement en délégation chez Red Hat pour contribuer à Vert.x.


Frédéric Le Mouël

INSA Lyon

Researcher, Developer, Professor



Autres talks de Frédéric, Julien

  • 2018 - Démystifier le réactif et l'orchestration de services avec Vert.x, Kubernetes et Kotlin

    Julien Ponge

    Les systèmes distribués réactifs ? L'orchestration de services avec Kubernetes ? Tout le monde ou presque a entendu ces termes sans nécessairement savoir de quoi il s'agit vraiment.

    Ce talk se veut une démystification du réactif avec Eclipse Vert.x et une initiation au déploiement d'applications dans Kubernetes qui est moins effrayant qu'il n'en a l'air. Bien entendu les démos (et l'éventuel effet démo) prendront le dessus sur l'empilement de slides. Et comme Vert.x supporte plusieurs langages populaires de la JVM, nous utiliserons Kotlin.