AFNetWorking(3.0)源码分析(一)——基本框架
来源:互联网 发布:java的基础知识 编辑:程序博客网 时间:2024/06/06 05:22
框架组成
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的功能类分析
2 0
- AFNetWorking(3.0)源码分析(一)——基本框架
- AFNetWorking(3.0)源码分析(一)——基本框架
- AFNetworking源码分析(一)
- AFNetWorking(3.0)源码分析(二)——AFURLSessionManager
- AFNetworking 3.0 源码阅读笔记(一)
- AFNetworking源码解析(一)
- AFNetworking源码解析(一)
- Nmap源码分析(基本框架)
- Nmap源码分析(基本框架)
- Nmap源码分析(基本框架)
- Nmap源码分析(基本框架)
- AFNetworking 3.0 源码解读(一)之 AFNetworkReachabilityManager
- Libevent源码分析(一)--- 基本数据结构
- Java 集合框架源码分析(一)——ArrayList
- Java 集合框架源码分析(一)——ArrayList
- RankLib源码分析(一):主框架
- JDK日志框架源码分析(一)
- AFNetworking 源码分析
- Git 内部原理 - 维护及数据恢复
- 面向对象之第一个程序
- Python调用有道web端翻译,翻译中英文
- 湘潭oj_1250 Super Fast Fourier Transform
- 初次邂逅Hibernate之环境配置
- AFNetWorking(3.0)源码分析(一)——基本框架
- Java集合 asList的缺陷
- 数据库优化
- Java-类库-Guava-EventBus
- 微信支付
- 线段树练习4
- Spring Security(01)——初体验
- 获取teechart图表控件的x轴的起始位置和右边界(即终止位置)
- 早期创业,应该充分利用互联网产品和服务(从”皇包车”看一家全球中文车导服务平台如何选用ToB产品)