SlideShare une entreprise Scribd logo
RXJAVA PRATIQUERXJAVA PRATIQUE
PR ÉSENTATIONPR ÉSENTATION
@Marseille
Développeur @ Red Hat
tsegismont @ GitHub / Twitter / GMail / Freenode
PROGRAMMEPROGRAMME
Pourquoi cette présentation ?
Découverte Rx
Du code ! Trois cas concrets
HAWKU L AR ME TRICSHAWKU L AR ME TRICS
Base de données de séries temporelles
Objectifs: capacité d'ingestion et grand nombre de clients
HAWKU L AR ME TRICSHAWKU L AR ME TRICS
Programmation asynchrone
Beaucoup de transformation de données
JAVA 8JAVA 8
Streams
Lambdas
GUAVAGUAVA
Iterators#transform
Futures#transform
COMPLEXITÉCOMPLEXITÉ
Callback hell
Code difficile à lire / maintenir
Rxjava pratique
POURQ UOI CET TE PRESENTATIONPOURQ UOI CET TE PRESENTATION
Partager une découverte
Donner envie de s'y mettre !
RE ACTIVE PROGRAM M IN GRE ACTIVE PROGRAM M IN G
Wikipedia:
In computing, reactive programming is a programming paradigm
oriented around data flows and the propagation of change.
RE ACTIVEXRE ACTIVEX
reactivex.io:
ReactiveX is a library for composing asynchronous and event-based programs by
using observable sequences.
En fait, un ensemble de librairies open sources pour
différents langages :
RxJava
RxJS
Rx.Net
...
PATTER N OBS ERVAB LE E TEN DUPATTER N OBS ERVAB LE E TEN DU
Séquences de données
Opérateurs (créer, transformer, filtrer, combiner)
Composition
OBSERVEROBSERVER
#onNext (autant de fois que d'évènements)
#onError (juste une fois à la fin)
#onComplete (juste une fois, à la fin)
MARBLE DIAGRAMMARBLE DIAGRAM
DÉMODÉMO
LES GAINS ?LES GAINS ?
Code lisible
Abstraction du modèle de concurrence
Contrôle de flux
Moins de bugs !!!!
CONNAISSEZ VOS OPÉRATE URSCONNAISSEZ VOS OPÉRATE URS
Évitez Observable#lift
Évitez Observable#create
DIF FICULTÉSDIF FICULTÉS
Debug
Boîte noire
MERCI !MERCI !

Contenu connexe

PDF
What's new in JBoss ON 3.2
PDF
Gardez vos-applications-loeil-avec-hawkular-metrics
PDF
Refcard GraphQL
PDF
La programmation fonctionnelle en javascript / PF
PDF
Présentation de WAMP.ws, le protocole pour faire du PUB/SUB et RPC over Webso...
PDF
Une introduction à Javascript
PPT
.Net pour le développeur Java - une source d'inspiration?
PPTX
REST in peace avec GraphQL
What's new in JBoss ON 3.2
Gardez vos-applications-loeil-avec-hawkular-metrics
Refcard GraphQL
La programmation fonctionnelle en javascript / PF
Présentation de WAMP.ws, le protocole pour faire du PUB/SUB et RPC over Webso...
Une introduction à Javascript
.Net pour le développeur Java - une source d'inspiration?
REST in peace avec GraphQL

Similaire à Rxjava pratique (20)

PDF
Alphorm.com Formation Big Data avec Apache Spark: Initiation
PDF
Retour expérience détection fraude temps réel
PPTX
COURS INITIATION A L'ALGORITHME ET PROGRAMMATION.06.12.21.pptx
PPTX
Devoxx 2017 : toutes les actualités technologiques à surveiller !
DOCX
Livre LabVIEW avec une introduction à LabVIEW NXG
PDF
Learning concurrent programming in Scala learn the art of building intricate ...
PPT
Domain-Specific Languages avec Groovy
PDF
Rich Ajax Platform
PPTX
Back to the future of java (from 8 to 11 and beyond)
PDF
Javaday Paris 2022 - Java en 2022 : profiter de Java 17
PPT
Dynamic Languages
PDF
De l'open source à l'open API avec Restlet
KEY
Introduction aux RIA (Rich Internet Applications)
PPT
Présentation Groovy
PPT
Présentation Groovy
PDF
Cyjpa formation-jpa-encapsuler-vos-api-de-persistance-java-avec-jpa
TXT
Chapter1
PPTX
Tour d’horizon de scala
PPTX
TypeScript for dummies
PDF
Tk06 Real Time Web Avec Adobe Flex Fr
Alphorm.com Formation Big Data avec Apache Spark: Initiation
Retour expérience détection fraude temps réel
COURS INITIATION A L'ALGORITHME ET PROGRAMMATION.06.12.21.pptx
Devoxx 2017 : toutes les actualités technologiques à surveiller !
Livre LabVIEW avec une introduction à LabVIEW NXG
Learning concurrent programming in Scala learn the art of building intricate ...
Domain-Specific Languages avec Groovy
Rich Ajax Platform
Back to the future of java (from 8 to 11 and beyond)
Javaday Paris 2022 - Java en 2022 : profiter de Java 17
Dynamic Languages
De l'open source à l'open API avec Restlet
Introduction aux RIA (Rich Internet Applications)
Présentation Groovy
Présentation Groovy
Cyjpa formation-jpa-encapsuler-vos-api-de-persistance-java-avec-jpa
Chapter1
Tour d’horizon de scala
TypeScript for dummies
Tk06 Real Time Web Avec Adobe Flex Fr
Publicité

Dernier (7)

PDF
Frais et décompte dans SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Analyse technique approfondie pour la gestion des transports dans SAP S/4HANA...
PDF
Architecture logicielle et Modeles de Conception
PPTX
test pour la présentation foire de Chalôns V1
PPTX
Cours Electrotechnique L2 - Séance 6.pptx
PDF
COURS GCDs Chap 9.pdf tous les éléments.
PDF
IPTV Meilleur - Le Meilleur Abonnement IPTV en France pour 2025
Frais et décompte dans SAP S/4HANA Transportation Management, S4TM3 Col26
Analyse technique approfondie pour la gestion des transports dans SAP S/4HANA...
Architecture logicielle et Modeles de Conception
test pour la présentation foire de Chalôns V1
Cours Electrotechnique L2 - Séance 6.pptx
COURS GCDs Chap 9.pdf tous les éléments.
IPTV Meilleur - Le Meilleur Abonnement IPTV en France pour 2025
Publicité

Rxjava pratique