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

框架組成
AFNetWorking是著名的網絡通信框架,今天,我們就一起分析一下該框架的組成。
將AF下載導入工程后,下面是其包結構:


image.png
    除去Support Files,可以看到AF分為如下5個功能模塊:

網絡通信模塊(NSURLSession)
網絡狀態監聽模塊(Reachability)
網絡通信安全策略模塊(Security)
網絡通信信息序列化/反序列化模塊(Serialization)
對于iOS UIKit庫的擴展(UIKit)

    其核心當然是網絡通信模塊,其余的四個模塊,均是為了配合網絡通信或對已有UIKit的一個擴展及工具包。 
    這五個模塊所對應的類的結構關系圖如下所示:
image
    可以看到,AF的核心是AFURLSessionManager類,AFHTTPSessionManager繼承于AFURLSessionManager, 針對HTTP協議傳輸做了特化。而AFURLResponseSerialization, AFSecurityPolicy, AFNetworkReachabilityManager則被AFURLSessionManager所用。 
    其次,還可以看到一個單獨的UIKit包提供了對iOS UIKit類庫的擴展與工具類。
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容