25

過去兩年來我一直在使用RestKit,但最近我開始考慮從這些龐然大物框架轉換,因爲它看起來真的是過度殺傷。從RestKit到純AFNetworking 2.0的過渡

這是我的優點前進:

  1. 有很大的需求,使用NSURLSession後臺獲取和RestKit只有過渡到AFNetworking 2.0實驗分支。轉換完成時沒有實際的日期。 (主要原因)
  2. 因爲不需要全功能的離線數據存儲,所以不需要網絡庫中的CoreData支持。
  3. 由於它們不支持路徑模式中的不同參數(例如訪問令牌參數),並且無法在具有自定義描述符的一行中創建對象請求操作,因此頭痛的是響應/請求描述符的新概念。在這裏,我放棄了作爲外觀的對象管理器的功能。

我在對象映射過程RestKit的最大的損失。 你可以推薦你使用的獨立庫,它顯示自己靈活和穩定?

二,而我傷心,我需要沒有全功能存儲,但我仍然需要一些緩存支持在一些地方。 我聽說NSURLCache在上次操作系統版本中變得有用。 你有沒有使用它,有什麼戰略? 網絡連接中斷時是否返回緩存API響應

三,有沒有人面臨同樣的問題? 您應用了哪些解決方案? 也許有人可以給一些關於體系結構的一條建議,他或她在純AFNetworking中使用多個應用程序?

+3

假設你正在使用JSON,AFNetworking + [Mantle](https:// github。com/MantleFramework/Mantle)是一個很好的組合。 –

+0

不幸的是,你已經提出了幾個問題,它們不適合Stack Overflow。 –

+9

謝謝地幔。爲什麼他們不適合?我認爲所有的編程主題都可以在這裏討論。我的問題沒有一個答案,但可能是人們想分享這個想法。 – yariksmirnov

回答

3

一,同意與其他人誰也評論說,AFNetworking + Mantle是用一個RESTful API進行交互,並替換你錯過RestKit的對象映射過程簡單而有效的方法。

二,回答緩存支持的要求高度依賴於上下文。但是,我發現,針對最近的功能需求,爲特定控制器的屏幕緩存視圖模型,並且僅緩存由API返回的參考數據,這使我可以保持應用程序邏輯相對簡單,同時爲用戶提供一些連續性。針對連接問題的簡單錯誤通知可以採用交叉方式處理。

三,關於與此方面相關的體系結構的一個想法是確保應用程序所依賴的API根據應用程序體驗提供數據。這使得您的應用可以專注於其擅長的功能(非常流暢的用戶體驗),並將邏輯移入API更接近API依賴項(如數據)的位置。這有助於降低應用程序的惡意程度。