美文网首页原理篇
SDWebImage源码理解

SDWebImage源码理解

作者: 南华coder | 来源:发表于2017-11-04 22:01 被阅读114次

    一、写在开头

    • 虽然网上有很多关于SDWebImage源码的分析文章,但这些都不是我自己的理解,他们或许能帮助我解决遇到的问题,也可能让我懈怠,不再去深入探究。SDWebImage源码理解中是我对SDWebImage(4.1.2版本)源码的体会理解,它并不拘泥于具体的API,而是从我的角度,去理解SDWebImage的源码设计。

    • 由于本人的技术能力有限,可能会在理解上有一些错误,如果大家发现有问题,欢迎留言,批评指正。

    二、SDWebImage概述

    • 在SDWebImage库中,主要的类有SDWebImageDecoder(图片解码)、SDImageCache(图片的缓存处理)、SDWebImageDownloader(图片下载器 )、SDWebImageDownloaderOperation(图片下载操作)和 SDWebImageManager(SDWebImage的管理类)。

    • SDWebImageManager持有SDWebImageDownloaderSDImageCache单例,负责调度图片的异步下载、缓存和获取;SDWebImageDownloader负责异步图片下载任务的调度,它维持了一个图片下载队列,队列中管理若干SDWebImageDownloaderOperation(NSOperation的子类)下载任务,封装了图片的下载任务,支持并发操作;SDImageCache负责下载图片的缓存和读取;SDWebImageDecoder负责图片的解码工作;

    • 总之,SDWebImage库提供了一整完善的机制,保证网络图片下载和存取。

    三、源码文章

    文章从图片的解码缓存下载三个角度去理解SDWebImage源码。

    1、图片的解码
    2、图片的缓存
    3、图片的下载
    • 具体文章见 篇3:SDWebImage源码看图片下载(还在码字中...)

    • 建议:在理解了SDWebImage中的图片下载后,可以看一下AFNetworking,了解下最主流的网络框架库如何设计(后面有时间也会介绍)。

    End

    • 我是南华coder,曾经梦想写诗走天涯,而今埋头苦思忙coder。

    相关文章

      网友评论

        本文标题:SDWebImage源码理解

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