AFNetworking源码阅读前的准备(一)框架一览
记得从最开始学习 iOS 开发做网络请求时了解了一点 NSURLConnection,然后基本所有的网络请求就是用的 AFN,且当时对它的印象就是带缓存功能的网络请求库。由于接触 iOS 开发较晚,所以基本完全错过了NSURLConnection,也不是,貌似那时 AFN 还是 2.x 还是基于 NSURLConnection 的。至于后来的手写网络请求就是使用 NSURLSession 了。
AFN 主要的功能模块:
- 网络通信模块 (AFURLSessionManager、AFHTTPSessionManager)
- 网络状态监听模块 (AFNetworkReachabilityManager)
- 网络通信安全策略模块 (AFSecurityPolicy)
- 网络通信信息序列化/反序列化模块 (AFURLRequestSerialization、AFURLResponseSerialization)
- 对于iOS UIKit库的扩展 (AFAutoPurgingImageCache、AFImageDownloader、AFNetworkActivityIndicatorManager、UIActivityIndicatorView+AFNetworking、UIButton+AFNetworking、UIImage+AFNetworking、UIImageView+AFNetworking、UIProgressView+AFNetworking、UIRefreshControl+AFNetworking、UIWebView+AFNetworking)
这些,也刚好是 AFN 里面的所有文件。
怎么样成为程序员,学习和实践,日积月累...