谈到AFNetworking 大家都比较熟悉了,可以很溜的说出网络请求是用AFNetworking ,还有可能知道其它的第三方请求比如ASI YTKNetwork 等等,面试官问你你要怎么说呢,不要光说用过,可以把原理讲一讲,ok 下面是个人总结,
一AFNetworking
1.AFNetworking 1.0 是基于NSURLConnection 比较原始的
2.AFNetworking 2.0 是基于NSURLConnection 和NSURLSession 的 ,没有摒弃NSURLConnection
3.AFNetworking 3.0 完全基于NSURLSession 摒弃了NSURLConnection,在Xcode 7 中苹果已经弃用了NSURLConnection 充分使用了NSURLSession
4AFNetworking 的异步请求使用的是NSOperation
二SDWebImage原理和基于
1. SDWebImage 是基于(异步)NSOperation和(请求)NSURLSession的,之前是基于(请求)NSURLConnection
2.原理,sdwebimage 加载图片,先会到内存里面找,if 到了 就加载,否则 就到沙盒里面找,if 到直接用,保存到内存中,if 没有就去网络上下载一下,分别保存到内存和沙盒中,
3、SDImageCache根据URL的MD5摘要对图片进行储存和读取。