Reactive Programming如何区别于在Event listener(mouse,key)中调用函数,因为它们都是异步事件流,因此Reactive优于传统事件侦听器的优点是什么?Java -Reactive Programming vs Event Listener
回答
事件听者实际上只由RxJava提供的功能的一个子集,而这正是它试图解决的问题:
但是,让我们备份了几步,这是比较容易理解的Observable是什么,如果您将它与Iterator(推或拉)进行比较。
Iterator.next()
相当于Observable.onNext()
- 下一个项目/事件发生时 - 消耗它。
Iterator.hasNext()
相当于Observable.onComplete()
- 它允许发布者通知订阅者没有更多要使用的事件(EventListener模型中缺少一件事)。
对于第三,Observable.onError()
没有等价的,因为迭代器,当你试图让next()
或remove()
你知道,你可能会得到NoSuchElementException
,UnsupportedOperationException
或IllegalStateException
并且可以捕获并处理任何人,因为你同步进行。
对于发布者来说,如果发生错误,没有办法通知监听器/订阅者然后崩溃。 onError()
是最后缺失的部分,Observable可以对任何错误进行优雅处理。
总结一下,Reactive Java来修复长时间缺少事件模型的部分。通过提供这些缺失的部分以及提供函数式编程风格(支持map,flatmap,filter等),它有助于以自然可读的方式编写异步调用,从而减少编程风格势在必行时所需的样板代码(例如嵌套 - 环路),并创建了callback-hell。
时,它是如何被复制的,非常感谢,你能建议一些站点来启动Reactive Programming。 – Jeevanantham 2015-02-11 07:08:49
@ jerith2我的答案中的前两个链接将是一个好开始! – alfasin 2015-02-11 07:16:51
- 1. Swift UITextView Event Listener
- 2. Cant Remove Event Listener
- 3. JMenuItem-adding event listener
- 4. ViewGroup in event listener
- 5. jQuery Event Listener不在监听
- 6. Quartz vs“Reactive Extensions”
- 7. d3.event vs d3.Event
- 8. IN JAVA PROGRAMMING
- 9. Python中的Functional Reactive Programming的状态是什么?
- 10. 在JQuery中使用Google Maps Api Event/Listener
- 11. 当用户注销时,SharePoint + Event Listener?
- 12. Windows 8 Javascript App Event Listener问题
- 13. Laravel Broadcasting:Notification vs Event
- 14. 比较Haskell中的Functional Reactive Programming软件包
- 15. Document Listener inactive Java
- 16. Angular 2 Reactive Forms vs Template Forms
- 17. UIElement.AddHandler()vs .Event + =定义
- 18. Action listener java problems
- 19. Java Exception Listener
- 20. java Field change listener
- 21. Java的Listener接口Scala的
- 22. Marionette Event Aggregator vs Backbone Router
- 23. prolog:logic programming
- 24. Programming fundas
- 25. Event Listener点击时更改按钮颜色
- 26. Symfony&Doctrine:使用Event Listener在表中记录变化
- 27. 什么EVENT LISTENER应该用于我的Android应用程序
- 28. Laravel Redirect在Event handler/listener中不起作用
- 29. Nhibernate在添加Event Listener后插入时应该更新
- 30. 如何将JavaScript类实例传递给DOM Event Listener?
当链接的问题是java * script * – LegendLength 2017-07-16 15:34:19