美文网首页
Android编程中的回调地狱的思考

Android编程中的回调地狱的思考

作者: 善笃有余劫 | 来源:发表于2018-09-09 23:50 被阅读41次

    前言

    Callback 是英文的回调,可以看出来类似一个等电话的操作。

    比如你想去买东西,没货了。于是留下号码等店员通知到货再去买。当然这期间你可以干其他事,直到店员通知你去。

    所以回调的产生需要AB两个角色,而其中B的流程依赖于A的结果。当然还需要异步,也就是A不必堵塞B的执行,直到A回调给了B结果。

    回调在Android中处处可见,通常的异步网络访问都需要回调给调用函数。

    问题

    最近我在修改一个老项目,从服务器移植到Android平台。这个服务器访问网络使用的HttpClient 而。最可怕的事情来了,因为服务器不需要异步访问网络,所以每个网络访问都是同步的,而且每个结果依赖于上个访问结果。

    而在移植的项目中,因为每次的网络结果都需要在UI显示,所以每个访问都需要异步。而异步结果又需要在回调里得到,于是形成了回调嵌套回调的结果。

    整体代码形成一个倒的三角形,非常难以阅读。我们称之为 回调地狱

    解决

    关于java的回调地狱Rxjava的解决

    相关文章

      网友评论

          本文标题:Android编程中的回调地狱的思考

          本文链接:https://www.haomeiwen.com/subject/pzhjgftx.html