官术网_书友最值得收藏!

Basic Operators

In the previous chapter, you learned a lot about the Observable and Observer. We also covered a small number of operators, particularly map() and filter(), to understand the role of operators as well. But there are hundreds of RxJava operators we can leverage to express business logic and behaviors. We will cover operators comprehensively throughout much of this book, so you know which ones to use and when. Being aware of the operators available and combining them is critical to being successful using ReactiveX. You should strive to use operators to express business logic so your code stays as reactive as possible.

It should be noted that operators themselves are Observers to the Observable they are called on. If you call map() on an Observable, the returned Observable will subscribe to it. It will then transform each emission and in turn be a producer for Observers downstream, including other operators and the terminal Observer itself.

You should strive to execute as much logic as possible using RxJava operators, and you should use an Observer to receive the end product emissions that are ready to be consumed. Try not to cheat or get creative by extracting values out of the Observable chain, or resort to blocking processes or imperative programming tactics. When you keep algorithms and processes reactive, you can easily leverage the benefits of reactive programming such as lower memory usage, flexible concurrency, and disposability.

In this chapter, we will cover the following topics:

  • Suppressing operators
  • Transforming operators
  • Reducing operators
  • Error-recovery operators
  • Action operators
主站蜘蛛池模板: 合山市| 通榆县| 包头市| 广平县| 环江| 邻水| 台安县| 平江县| 凤城市| 铜梁县| 周宁县| 江城| 旬邑县| 兴城市| 惠来县| 高邮市| 平泉县| 磐安县| 镇雄县| 同江市| 绥化市| 灌南县| 库伦旗| 海安县| 海口市| 吴桥县| 寿阳县| 青海省| 昆山市| 邓州市| 永胜县| 平阳县| 靖宇县| 海城市| 大足县| 梨树县| 潮州市| 淮北市| 东源县| 同仁县| 盐山县|