Reactive Extensions
RxJava
Programmation réactive
Paradigme consistant à modéliser le logiciel comme un flot d'évènements modifiant l'état du système
- Orienté message : chaque évènement est un nouveau message reçu
- Asynchrone : les modifications peuvent produire de nouveaux évènements
Objectifs
- Performance/Scalabilité
- Robustesse/tolérence aux pannes
- Maintenabilité
rx.Observable
patron de conception : itérateur et observer
composition des traitements (comme avec les Stream)
asynchrone au besoin
Pattern observer
Classe principales
Observable au quel on souscrit
Observer object qui souscrit à l'Observable
onNext()
onCompleted()
onError()
- Subscription permet de gérer les sousscription
Talk is cheap!
Show me the code!
Documentation
Hot Observable
Intérêts
- composition des traitements
- testabilité
- lisibilité (quand c'est bien fait !)
- scalabilité
- monitorabilité