除了微软的文档,是否有一个很好的Microsoft Reactive (Rx)框架的介绍和教程?
另外,有什么好的例子(有代码)可以让使用传统异步编码技术难以解决的编程问题变得更容易?
除了微软的文档,是否有一个很好的Microsoft Reactive (Rx)框架的介绍和教程?
另外,有什么好的例子(有代码)可以让使用传统异步编码技术难以解决的编程问题变得更容易?
当前回答
这里有一个wiki网站,有很多代码示例演示如何使用.NET Rx框架的不同特性:http://rxwiki.wikidot.com/101samples
我发现这是最全面的网站,也是最容易上手的一个。
其他回答
MSDN站点的rx -框架
对于一个更深入的开发人员,源代码
关于Rx的奥地利主题演讲
这是我见过的最好的:DevCamp 2010 Keynote - Rx:治愈异步编程的忧郁
9频道有一些有趣的视频
Kim Hamilton和Wes Dyer: BCL中的。net Rx和IObservable/IObserver内部(VS 2010)
采访Rx的创造者:专家对专家:Brian Beckman和Erik Meijer - .NET响应式框架(Rx)内部
Rx的创建者的介绍
端到端:埃里克梅杰和韦斯戴尔- 响应式框架(Rx) 防护罩1 / 2 E2E: Erik Meijer和 Wes Dyer -反应框架(Rx) 引擎盖下2中的2
一篇Codeproject文章
另一个课程第一个博客链接(新)
除了Andreas Hoffmann的链接(我在学习Rx时发现它们非常有用)
以下是Bart De Smet(一个非常聪明的人,他把事情解释得很好)的一些视频:
有点像Rx的演练: Rx -治愈你的异步编程的忧郁
一些血腥的内幕+一些哲学,这些视频真的很有启发性: minlinq - LINQ的精髓 (上面的视频讨论了LINQ与其他事物的关系,比如Rx)
关于iqobservable的观察- IQueryable对偶
这里有一个用响应式编程很容易做到的例子,但是用经典事件很麻烦(如果没有挑战性的话),当鼠标按钮按下时,它会画线。它是可读的,没有显式的状态处理:
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));
(我必须承认,在这个例子中,Pairwise()是自制的…)
IObservable最重要的一点是它是“可组合的”,就像IEnumerable一样。
我彻底推荐另一个答案中提到的视频。事实上,在Channel9上有几个不同的视频:
我还在CodeBetter.com上找到了《介绍响应式框架第一部分》。在同一个网站上有第一部分的续集。
我希望这对你有所帮助。
奇怪的是,响应式扩展的主页链接到十几个视频和博客,却忘记链接到全面的官方参考文档。这真是太遗憾了,如果你了解这个团队,请让他们修复他们的网站!
http://msdn.microsoft.com/en-us/library/hh242985 (v = vs.103) . aspx http://msdn.microsoft.com/en-us/library/hh242986 (v = vs.103) . aspx http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable (v = VS.103) . aspx