如果你是一位 Android 开发者,那么这些天你可能已经听到或看到一些关于 RxJava 满天飞的宣传了。RxJava 是一个能让你摆脱编写一些复杂繁琐的代码去处理异步事件的库。一旦开始在你的项目中使用,你会对它爱不释手的。
然而,RxJava 有个缺陷,它需要一个陡峭的学习过程。对于一个从未接触使用过 RxJava 的人来说,是很难一次就领会到它的精髓所在的,对于它的一些使用方法你也可能会很迷惑。在项目中使用它意味着你需要稍微地改变一下你的代码编写思路,另外,这样的学习曲线会使得在项目中因为大规模的使用RxJava而引发一些问题。
当然,关于如何去使用 RxJava 已经有许多的教程和代码范例了。感兴趣的开发者可以访问 RxJava 的官方 Wiki,里面有关于什么是 Observable 以及它和 Iterable、Future 之间关系的很好的解释。Wiki 里有一篇很有用的文章:How To Use RxJava,这篇文章包含怎么去发送事件流并且打印出它们的介绍以及它的样例代码。
但我们要明确的是在还没有学习什么是 Observable 的前提下了解 RxJava 用来解决什么问题以及它是怎么帮助我们组织起异步代码的。
我这篇文章的定位就是 RxJava 官方文档的“前篇”,读完这篇文章能更好地去理解 RxJava 所解决的问题。文章中也有一个小 Demo,就是自己怎么去整理那些凌乱的代码,然后看看我们在没有使用 RxJava 的情况下是怎么去遵循 RxJava 基本原则的。
所以,如果你仍有足够的好奇的话就让我们开始吧!
Read more...