Annonce de RxGo v2 – Meilleure programmation

Online Coding Courses for Kids

Dans ReactiveX, les deux concepts principaux sont l’observateur et l’observable.
Un observable est un flux de données limité ou illimité. Un observateur souscrit à un observable. Il réagit ensuite à tout élément émis par l’observable. Il existe des opérateurs pour créer ou composer des observables.

L’implémentation RxGo est basée sur le concept de pipelines. Un pipeline est une série d’étapes reliées par des canaux. Chaque étape est un groupe de goroutines exécutant la même fonction.

Voyons un exemple concret:

Photo de l’auteur.

Ici, chaque case est un opérateur:

  • Nous créons un observable statique basé sur une liste fixe d’éléments en utilisant le Just opérateur.
  • Nous définissons une fonction de transformation (cercle en carré) en utilisant le Map opérateur.
  • Nous filtrons chaque carré jaune en utilisant le Filter opérateur.

Dans cet exemple, les éléments finaux sont envoyés à un canal accessible au consommateur. Il existe d’autres façons de consommer des articles. La publication des résultats dans un canal n’est qu’une option.

Par défaut, les opérateurs sont séquentiels. Cependant, nous pouvons facilement tirer parti du parallélisme en définissant plusieurs instances d’un opérateur. Chaque instance d’opérateur est un goroutine connecté à un canal commun.

La philosophie principale de RxGo est d’implémenter les concepts ReactiveX et de tirer parti des primitives de concurrence Go. Par conséquent, l’intégration entre les deux mondes est rendue aussi fluide que possible.

Close Menu