从应用角度看ReativeX

这篇从我个人的角度聊聊ReactiveX这种思想的应用场景。

首先不论MVVM的使用场景,我也没有特别丰富的MVVM的使用经验。那么什么场景更加适合呢?

请求

如果只是单独的请求,那么也没有Reactive什么事情,但是当多个请求的时候,那么问题就来了。

多个请求就涉及到多次返回,那么如何组织这多次返回呢?可能有些场景要求按照发请求的顺序返回,有些场景可能仅需要任一个请求返回,又或者有些需要所有都返回的时候才触发回调,甚至可能有些请求存在依赖。

如何比较好的处理这些需求,那么Reactive本身就给我们一个很好的解决方案,可以说就是为了处理这种场景而生的。

流程

很多时候,我们的一个流程会非常长,比如注册、首次登陆等等,而这些流程可能中间的某些步骤是可以复用的,然而很多不同的步骤所需要的参数可能也会稍有不同,那么如何表示这种流程比较好呢?

把每一个步骤都做成Signal,那么这个问题就非常简单的解决了,不管流程的走向和分支是怎么样的,Reactive都能很好的解决,也不需要每一步都精心做好回调,然后把事件传递的到处都是。

总结

这就不得不提一下monad这个概念了,只要符合pure function操作的所有行为,其实都可以定义为signal,并且利用各种组合来解决一定的时序问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容