Decorative image frame

modi.wu

顺流而下,把梦做完

modi.wu

实现生成sequence序列的方法

这段时间在学习kotlin的协程相关的内容,其中看到一个函数sequence(@BuilderInference block: suspend SequenceScope<T>.() -> Unit),它可以一个接一个地或按任意大小的块生成序列(Sequences) 。这个函数
接受一个包含调用 yield()yieldAll() 函数的 lambda 表达式。它们将一个元素返回给序列消费者并暂停
sequence()的执行,直到消费者请求下一个元素。 yield() 将单个元素作为参数;yieldAll()可以 接受一个 Iterable对象、一个Iterator或另一个Sequence

阅读全文...

okhttp框架解析

作为Android程序员除了Google官方提供Android源码,开发项目时还要用很多优秀的三方开源库帮助我们快速开发,OKhttp3作为square开源的网络库,已成Android程序员必用的网络库,因为其优秀的代码设计、完善的网络请求功能,也被Google收入官方源码实现。作为开发者学习作为网络的网络有很多分析OkHttp的文章,大多都是讲OkHttp的使用、框架结构以及设计模式等这些内容。而这些只是OkHttp的一些手段和方式,它本质上一个网络请求的库,我们阅读源码的时,实现只不过是为了达到目的一种方式,脱离目的的实现,如缘木求鱼。所以在分析OkHttp源码的时一定要结合http本身的特性,不然就很容易偏离事物本质。

阅读全文...