Pregunta

Además de la documentación de Microsoft, ¿hay una buena introducción y tutorial al marco de Microsoft Reactive (RX)?

Además, ¿cuál es un buen ejemplo (con código) que Reactive facilita un problema de programación que es un desafío de resolver el uso de técnicas de codificación asíncrona convencionales?

¿Fue útil?

Solución 2

Aquí hay un sitio wiki con muchos ejemplos de código que demuestran cómo usar diferentes características del marco .NET RX: http://rxwiki.wikidot.com/101samples

Encontré que este es el sitio más completo que existe, y el que es más rápido comenzar.

Otros consejos

ACTUALIZAR: Las publicaciones de blog a continuación han sido reemplazadas por mi libro en línea www.introtorx.com. Es un libro integral de 19 capítulos disponibles de forma gratuita. Puede navegarlo en la web o descargar la versión MOBI para su Kindle. También puede obtenerlo directamente desde Amazon por una pequeña tarifa (~ 99c / 77p). Si el libro no satisface sus necesidades o expectativas, hágamelo saber y lo haremos mejor para V2.

Gracias por el enlace a la publicación caliente/fría. Esta es solo una parte del serie completa,

  1. Introducción a RX
  2. Métodos estáticos y de extensión
  3. Gestión de por vida: completar y cancelar la suscripción
  4. Control de flujo
  5. Combinando múltiples transmisiones IOBServables
  6. Programación y roscado
  7. Observables calientes y fríos
  8. Prueba de RX
  9. Búfer, ventana, unión y grupo unirse

Seguiré actualizando este blog con más cosas introductorias de RX.

Para cosas más avanzadas, quieres ir al Foro RX (MSDN).

Sitio MSDN para Trabajo de marco rx

Para que un desarrollador se profundice, el Código fuente

Nota de apertura austriaca genial sobre RX

Este es lo mejor que he visto: NOTA DE DEVCAMP 2010 - RX: curando su blues de programación asíncrona

Algunos videos interesantes en el canal 9

Kim Hamilton y Wes Dyer: Inside .NET RX e IOBServable/Iobserver en el BCL (vs 2010)

Una entrevista con el Creador de RX: Experto a experto: Brian Beckman y Erik Meijer - Dentro del marco reactivo .NET (RX)

Una introducción del creador de RX

Un código de código Artículo

Otro curso Primer blog con enlaces (nuevo)

Aquí hay un ejemplo de algo que es fácil de hacer con la programación reactiva, pero desordenada (si no desafiante) con eventos clásicos, dibuja líneas mientras el botón del mouse está inactivo. Es legible, no hay un manejo de estado explícito:

var pen = new Pen(Color.Red, 3);
var graphics = this.CreateGraphics();

var mouseMoveWhileDown = 
    from md in this.GetMouseDown()
    from mv in this.GetMouseMove().Until(this.GetMouseUp())
    select new Point(mv.X, mv.Y);

mouseMoveWhileDown
    .Pairwise()
    .Subscribe(tup => graphics.DrawLine(pen, tup.Item1, tup.Item2)); 

(Debo confesar que en ese ejemplo, el parque () es de cosecha propia ...)

Lo más importante de IOBServable es que es 'compuesto', como IEnumerable.

Recomiendo el video mencionado en otra respuesta. De hecho, hay varios videos diferentes sobre el tema en Channel9:

Una vez que hayas pasado por algunas de las cosas básicas, incluido el HandsonlabAsegúrate de revisar Los observables calientes y fríos de Lee Campbell que tomó algo del misterio arcano de RX para mí :)

Puede encontrar esta serie de artículos (hay cuatro) sobre Reactive LINQ útil:Programación reactiva (ii.) - Introducción de Linq reactivo.

Tiene un ejemplo de escribir un juego que lo usa, por lo que es de esperar que sea lo que estás buscando.

También encontré Introducir el marco reactivo Parte I en CodeBetter.com. Hay una secuela de la primera parte en el mismo sitio.

Espero que esto ayude.

Extrañamente, las extensiones reactivas página principal Enlaces a una docena de videos y blogs, pero se olvida de vincular a la documentación de referencia oficial integral. Esa es una lástima que llora, si conoces al equipo, ¡pídales que arreglen su sitio web!

Jugar con Rx Sandbox Para obtener una visión muy intuitiva de lo que significan los diferentes combinadores. Esta es la mejor herramienta de aprendizaje que he visto.

Realice estos artículos y, en particular, descargue el código fuente relacionado y juegue con él.

Confía en que esto ayudará

Para responder a la segunda pregunta, aquí hay un problema que puede beneficiar mucho de RX. Se llama "Hazte rico rápido".

Has desarrollado un juego por el mismo nombre y se está vendiendo bastante bien. Pero está disponible solo en sus tiendas para mayoristas. Para facilitar el procesamiento de efectivo, tiene una cinta transportadora que fluye hacia usted.

(Por favor, siéntase libre de cambiar la historia anterior :))

Los vendedores colocan talleres de efectivo en efectivo sin etiquetas que indican la cantidad y el tipo de facturas en el WAD. Su trabajo es ordenar y contar el dinero. Más adelante, cuando obtienes más dinero, puedes contratar a otros para que te ayuden.

En este caso, la fuente es una fuente asincrónica de focos de efectivo (productor). Sus empleados y proveedores esperan dinero, pero debe consumir los WADs, desempaquetarlos y utilizar su lógica comercial personalizada para volver a empaquetar según corresponda para pagarlos.

Los vendedores se están ejecutando en su propio hilo, para que no tengan que esperar a que cuente lo que arrojan en el cinturón. Su tiempo se utiliza mejor si se le dice cuando hay más dinero disponible para contar, hasta que puede hacer otro trabajo.

Podrías representar cada fajo por un byte [].

Esta es una situación de mundo real bastante común; Cuando recupere cualquier recurso [por ejemplo, páginas web para motores de búsqueda, imágenes o videos] en una red o datos de periféricos, los obtiene en fragmentos de bytes (posiblemente con encabezados). En un solo hilo, o en un entorno de múltiples subprocesos con el que es demasiado difícil trabajar, tiende a agregarlos y procesarlos. ¡¡Ya no!!

Jesse Liberty tiene un libro, publicado en octubre de 2011:

Amazon.com: Programación de extensiones reactivas y LINQ

Y están los videos RXWorkshop en Channel9:

Channel9: rxworkshop

¿Su cláusula de "Documentación de exclusión de Microsoft" se extiende a los videos en el Canal 9?

Del creador del marco reactivo Erik Meijer: - Experto a experto: Brian Beckman y Erik Meijer - Dentro del marco reactivo .NET (RX)

Para estrenar: Comenzando con extensiones RX para .NET

Además de los enlaces de Andreas Hoffmann (los encontré muy útiles cuando estaba aprendiendo RX)

Estos son algunos de los videos de Bart de Smet (un tipo muy inteligente que explica las cosas muy bien):

Un poco una carrera de RX:
RX - Curando tu blues de programación asincrónica

Algunos ingresos sangrientos sangrientos + algunas filosofía, estos videos son realmente esclarecedores:
Min Linq - La esencia de Linq
(El video anterior trata sobre cómo Linq se relaciona con otras cosas, como RX)

Observaciones sobre iQBServable: el dual de IQueryable

Devhol202 - Curando los azules asincrónicos con las extensiones reactivas para .NET (PDF, 2 MB) es el mejor laboratorio/tutorial que he visto hasta ahora. Lo guía a través de los conceptos básicos de la biblioteca, para que pueda construir y diseñar lo que ha aprendido.

También hay una versión de JavaScript. Busque en Google "Extensiones reactivas prácticas en el laboratorio".

me gustó Introducción a RX Parte 1 - Tipos clave, y mostró las características clave.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top