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

When to use RxJava

A common question ReactiveX newcomers ask is what circumstances warrant a reactive approach? Do we always want to use RxJava? As someone who has been living and breathing reactive programming for a while, I have learned that there are two answers to this question:

The first answer is when you first start out: yes! You always want to take a reactive approach. The only way to truly become a master of reactive programming is to build reactive applications from the ground up. Think of everything as Observable and always model your program in terms of data and event flows. When you do this, you will leverage everything reactive programming has to offer and see the quality of your applications go up significantly.

The second answer is that when you become experienced in RxJava, you will find cases where RxJava may not be appropriate. There will occasionally be times where a reactive approach may not be optimal, but usually, this exception applies to only part of your code. Your entire project itself should be reactive. There may be parts that are not reactive and for good reason. These exceptions only stand out to a trained Rx veteran who sees that returning List<String> is perhaps better than returning Observable<String>.

Rx greenhorns should not worry about when something should be reactive versus something not reactive. Over time, they will start to see cases where the benefits of Rx are marginalized, and this is something that only comes with experience.

So for now, no compromises. Go reactive all the way!

主站蜘蛛池模板: 乌鲁木齐县| 武山县| 永城市| 灵丘县| 平果县| 枞阳县| 玉山县| 临沂市| 田林县| 永寿县| 隆德县| 屯留县| 聂拉木县| 鹤庆县| 工布江达县| 吴旗县| 普陀区| 泗阳县| 墨脱县| 灵宝市| 行唐县| 巩义市| 留坝县| 凤城市| 镇康县| 汝城县| 金湖县| 辛集市| 石阡县| 青阳县| 保山市| 商丘市| 石嘴山市| 扎兰屯市| 永顺县| 延安市| 巩留县| 鄂托克前旗| 遂溪县| 达孜县| 博爱县|