深入剖析框架之OkHttp篇

亓春傑發表於2018-08-16

本文是框架剖析系列的第一部:OkHttp

引論

每一個流行的框架, 旨在解決一個開發痛點。 每一個框架, 也有其特色的設計與思想。 它們可以大幅度提高我們的開發效率, 並一定程度上提高我們的程式碼的效能。然而我們在使用一個框架時, 大多存在幾種情況:

  • 沒有全面瞭解框架提供的API, 這是熟練使用一個框架最基礎的
  • 沒有去了解框架的設計思路, 甚至不清楚都解決了哪些痛點
  • 沒有去探究程式碼的實現,或者淺嘗即止

針對以上情況, 可以把對一個框架的使用分為幾個階段:

  • 只見樹木, 不見森林(只會用一些常用的API, 不知道框架還有一些特色的, 便捷的API)
  • 見森林,而不見生態 (會用大部分API,一些冷僻的除外; 但是不知道它的設計思想是什麼?)
  • 知生態, 更知其本源(除了API外, 瞭解框架的設計思路, 甚至全面掌握原始碼設計)


本系列旨在深入剖析Android開發中常用的主流框架, 由使用到機制,再到原始碼全面的研討。在保證我們可以自由使用之外, 更可以理解其設計思想, 進一步應用到我們開發中。

理解一個框架最好的方式就是官方文件。 因此本系列從官方文件入手, 全面深入的剖析框架的使用, 設計以及原始碼。本系列採用中英文互譯的方式剖析官方的Wiki, 你可以隨時閱讀原汁原味的官方解釋。

OkHttp系列

OkHttp框架是由Square開發的, 目前最火熱輕量級網路框架。 它的出現替代了HttpUrlConnection和Apache HttpClient(android API23 6.0裡已移除HttpClient)。 與Volley, Retrofit等不同,它是一個偏底層的框架, 類似於以前的HttpUrlConnection和HttpClient, 但處理更為全面, 高效。

目錄

相關文章