【多线程-第四天-自己模拟SDWebImage的下载图片功能-下载操作管理类 Objective-C语言】

一、下载操作管理类

1.我们来看,模拟SDWebImage,我们还需要做哪些事情,

通知

我们先回忆一下啊,最终,我们要做的事情是,给UIImageView做一个分类,将来在Controller里边用的时候,Controller只要给UIImageView一个下载的地址,那它就帮我把图片下载并且显示出来了,我们最终的目标,是只需要它们两个,

通知

Controller里边,调用UIImageView的一个方法,就把图片给我显示出来了,

UIImageView,它是控件儿,它是不负责下载图片的,所以要想下载图片,我们得去找这么一个类,找这么一个下载的这么一个类,注意,我们找下载的类,找的不是我们刚刚写的这个下载操作的类,因为,刚刚写的这个下载操作的类,它只是下载图片,并没有去处理问题,比如图片重复下载的问题,并没有去做缓存,所以,我们在下载操作的这个类的基础上,在它之上,我们再来做一个类,这个类叫做“下载操作管理类”,

我们会给这个类起一个名字,叫做Manager,它负责什么呢,它负责全局的下载操作,真正下载的时候,是调用这个Manager,它去下载图片,并且它内部要去解决图片重复下载的问题,它内部要去解决图片缓存的问题,

并且,这个类将来要做成单例的形式,因为你要下载,OK,你只要找我就行了,这个人只用存在一次,这个管理者,这个经理,只用存在一次,

将来,它要去下载图片,它让谁去下载,它不去下载啊,它是管理者,它不去下载,它让谁下载,它让具体的下载操作类,就是刚刚我们写的那个DownloaderOperation,并且它管理的可不止是一个操作,下载一个图片,我创建一个Operation,下载两个图片,我创建两个Operation,这是这个Manager,它要去干什么,这就是我们模仿SDWebImage它的一个框架结构,

将来,我们写完之后,Controller,要去使用UIImageView,UIImageView要去调用下载操作管理类,下载操作管理类要去创建Operation,创建下载操作,去下载图片,

通知

到这儿,画的这条圈,还没有问题,最下面这条线是干什么,它里边是下载图片的,当图片下载完成之后,要干什么,回到主线程更新UI,就是调用回调的block,最终是由它里边去调用回调的block,这是整个我们所需要的类,

我们下载操作类写完了,后边该写下载操作管理类了,它里边得创建一个单例的方法,

2.下载操作管理类

在MyWebImage分组中,创建一个类,这个类要继承NSObject,叫做HMDownloaderOperationManager类,一般管理者要管理谁呢,先把要管理的这个人的名字写上来,后边加一个Manager,

通知

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风清晨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值