AFNetWorking(3.0)源码分析(一)——基本框架

框架组成


        AFNetWorking是著名的网络通信框架,今天,我们就一起分析一下该框架的组成。
        将AF下载导入工程后,下面是其包结构:

这里写图片描述

        除去Support Files,可以看到AF分为如下5个功能模块:

  • 网络通信模块(NSURLSession)
  • 网络状态监听模块(Reachability)
  • 网络通信安全策略模块(Security)
  • 网络通信信息序列化/反序列化模块(Serialization)
  • 对于iOS UIKit库的扩展(UIKit)

            其核心当然是网络通信模块,其余的四个模块,均是为了配合网络通信或对已有UIKit的一个扩展及工具包。
            这五个模块所对应的类的结构关系图如下所示:

这里写图片描述

        可以看到,AF的核心是AFURLSessionManager类,AFHTTPSessionManager继承于AFURLSessionManager, 针对HTTP协议传输做了特化。而AFURLResponseSerialization, AFSecurityPolicy, AFNetworkReachabilityManager则被AFURLSessionManager所用。
        其次,还可以看到一个单独的UIKit包提供了对iOS UIKit类库的扩展与工具类。
        那么,我们的源码分析之路,也按照这种分类,依次为

- 网络通信核心AFURLSessionManager分析
- HTTP网络通信核心AFHTTPSessionManager分析
- 网络数据的装配解析员AFURLResponseSerialization分析
- 网络状态监测员AFNetworkReachabilityManager分析
- 网络数据的组装与解AFURLRequestSerialization/AFURLResponseSerialization 分析
- 网络安全策略 AFSecurityPolicy分析
- AF提供的工具包AF UIKit的功能类分析

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值