BT

Nouveau Early adopter ou innovator ? InfoQ a travaillé sur de nouvelles fonctionnalités pour vous. En savoir plus

La Programmation Réactive comme tendance émergente

| par Dio Synodinos Suivre 2 Abonnés , traduit par Nicolas Frankel Suivre 2 Abonnés le 30 sept. 2013. Durée de lecture estimée: 3 minutes |

La Programmation Réactive (PR) est basée sur les flux de données et la propagation des changements, avec le modèle d'exécution sous-jacent du langage de programmation propageant automatiquement les changements à travers le flux de données. Avec la popularité des architectures évènementielles, scalables et interactives à la fois sur le serveur et le client, le concept de "réactivité" retient de plus en plus l'attention.

InfoQ a déjà couvert ce paradigme depuis quelques années et il y a quelques semaines, la firme de recherche Gartner a inclus la "Programmation Réactive" et le "Web Evènementiel" dans sa publication Cycle Hype pour le Développement d'Application, 2013(section "En hausse").

Il y a un mois, Bruce Eckel, auteur de plusieurs livres sur la programmation et Jonas Boner, créateur d'Akka et Directeur Technique de Typesafe, ont publié "Le Manifeste Réactif" qui tente de définir ce que sont les application réactives.

Ces applications doivent être capable de :

  • Réagir aux évènements : la nature évènementielle permet les qualités suivantes.
  • Réagir à la charge : se concentrer sur la scalabilité plutôt que sur la performance d'un seul utilisateur.
  • Réagir aux erreurs : construire des systèmes robustes dotés de la capacité de se remettre à tous les niveaux.
  • Réagir aux utilisateurs : combiner les traits précédents pour une expérience utilisateur interactive.

A la suite de la publication de ce manifeste, Martin Odersky, créateur de Scala, Erik Meijer, créateur de Reactive Extensions et Roland Kuhn le Tech Lead d'Akka ont annoncé un cours gratuit sur Coursera appelé "Principes de Programmation Réactive":

L'objectif de ce second cours est d'enseigner les principes de la programmation réactive. La programmation réactive est une discipline émergente qui combine la concurrence et les systèmes asynchrones et évènementiels. C'est essentiel pour écrire n'importe quelle sorte de service web ou de système distribué, et est également au coeur de beaucoup de systèmes concurrents très performants. La programmation réactive peut être vue comme une extension naturelle la programmation fonctionnelle d'ordre supérieur pour les systèmes concurrents qui gèrent l'état distribué en coordonnant et en orchestrant des flux de données asynchrones échangés par les acteurs.

Netflix est société qui a utilisé la PR intensivement et a même contribué un portage de Rx en Java :

La programmation réactive fonctionnelle avec RxJava a permis à Netflix d'utiliser avec profit la concurrence côté serveur sans les problématiques standards de gestion et de synchronisation des processsus. L'implémenentation de l'API de la couche de services a le contrôle sur les primitives de concurrence, ce qui nous permet de poursuivre les améliorations de performance système sans peur d'impacter le code client. Pour nous, RxJava est efficace sur le serveur et plus nous l'utilisons, plus il se dissémine profondément dans notre code.

Facebook a également récemment publié la librairie JavaScript React pour construire la prochaine génération d'interfaces utilisateur. Stoyan Stefanov, ingénieur chez Facebook, décrit le concept principal derrière React :

React vous permet de construire votre application en utilisant des composants qui savent retourner des données. Lorsque les données changent, les composants sont mis à jour automatiquent d'une manière très efficace, seulement lorsque c'est nécessaire. Et le travail d'attacher et de détacher les gestionnaires d'évènements est pris en charge pour vous. Egalement très efficace - l'utilisation de la délégation.

Il est pertinent de noter que la PR recueille déjà beaucoup d'attention de la part de la communauté des développeurs front-end, qui a commencé en 2009 avec la publication originale Flapjax[PDF] et a continué avec plusieurs librairies implémentant les principes de la PR comme Bacon.js, Knockout, Meteor, React.js, Reactive.coffee et RxJS.

Pendant la conférence QCon 2013 à San Francisco, il y aura une couverture extensive du paradigme Réactif, aux côtés des autres tendances et innovations majeures du logiciel et de l'IT, à la fois des tutoriaux et des présentations classiques, alors venez profiter des tarifs *early bird* !

Evaluer cet article

Pertinence
Style

Bonjour étranger!

Vous devez créer un compte InfoQ ou cliquez sur pour déposer des commentaires. Mais il y a bien d'autres avantages à s'enregistrer.

Tirez le meilleur d'InfoQ

Donnez-nous votre avis

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet
Commentaires de la Communauté

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Discuter

Se connecter à InfoQ pour interagir sur ce qui vous importe le plus.


Récupérer votre mot de passe

Follow

Suivre vos sujets et éditeurs favoris

Bref aperçu des points saillants de l'industrie et sur le site.

Like

More signal, less noise

Créez votre propre flux en choisissant les sujets que vous souhaitez lire et les éditeurs dont vous désirez suivre les nouvelles.

Notifications

Restez à jour

Paramétrez vos notifications et ne ratez pas le contenu qui vous importe

BT