Différences entre les versions de Rx
La rubrique suivante décrit les différentes plateformes pour lesquelles vous pouvez développer des solutions à l’aide d’extensions réactives.
Pour obtenir la dernière version de Rx, ainsi que pour en savoir plus sur ses conditions préalables, visitez le Centre de développement Msdn Rx.
.NET Framework
Les interfaces Rx principales, IObservable<T> et IObserver<T>, sont fournies dans le cadre de .NET Framework 4. Si vous exécutez sur .NET Framework 3.5 SP1, ou si vous souhaitez tirer parti des opérateurs LINQ implémentés dans type Observable , ainsi que de nombreuses autres fonctionnalités telles que les planificateurs, vous pouvez télécharger les assemblys Rx dans le Centre de développement MSDN Rx.
Silverlight
Silverlight vous interdit d’effectuer des appels de thread croisé. Par conséquent, vous ne pouvez pas utiliser un thread d’arrière-plan pour mettre à jour l’interface utilisateur. Au lieu d’écrire du code détaillé à l’aide de l’appel Dispatcher.BeginInvoke pour exécuter explicitement du code sur le thread d’interface utilisateur main, vous pouvez utiliser la méthode factory Observable.Start fournie par les assemblys Rx pour appeler une action de manière asynchrone. Le cross-threading est pris en charge de manière transparente par Rx sous le capot.
Vous pouvez également utiliser les différentes surcharges d’opérateur Observable qui acceptent un planificateur et spécifier le DispatcherScheduler à utiliser.
Javascript
Rx pour Javascript (RxJS) vous permet d’utiliser des opérateurs LINQ en JavaScript. Il fournit des conversions faciles à utiliser à partir d’événements DOM, XmlHttpRequest (AJAX) et jQuery existants vers des collections observables basées sur push, ce qui permet aux utilisateurs d’intégrer en toute transparence Rx à leurs sites web JavaScript existants.
RxJS apporte des fonctionnalités similaires au script client et s’intègre aux événements jQuery (Rx.Observable.FromJQueryEvent). Il prend également en charge Script#.
Windows Phone
Windows Phone 7 est livré avec une version des extensions réactives intégrées dans la ROM de l’appareil. Pour plus d’informations, consultez Vue d’ensemble des extensions réactives pour .NET pour Windows Phone. La documentation de cette version des extensions réactives se trouve dans Windows Phone bibliothèque d’API à l’adresse Espace de noms Microsoft.Phone.Reactive.
Le Centre de développement MSDN rx contient également une version mise à jour de Rx pour WP7, qui a de nouvelles définitions dans l’espace de noms System.Reactive.Linq. Notez que les nouvelles API ne seront pas en conflit avec la bibliothèque intégrée au téléphone (et qu’elles ne remplacent pas la version dans le ROM). Pour plus d’informations sur les différences entre ces 2 versions, consultez ce billet de blog de l’équipe Rx.