常用的iOS SDK庫和第三方庫

iOS SDK庫編程

1.Foundation緩存

  Cocoa不是一種編程語言(它能夠運行多種編程語言),它也不是一個開發工具(經過命令行咱們仍然能夠開發Cocoa程序),它是建立Mac OS X和IOS程序的原生面向對象API,爲這二者應用提供了編程環境。網絡

咱們一般稱爲「Cocoa框架」,事實上Cocoa自己是一個框架的集合,它包含了衆多子框架,其中最重要的要數「Foundation」和「UIKit」。前者是框架的基礎,和界面無關,其中包含了大量經常使用的API;後者是基礎的UI類庫,之後咱們在IOS開發中會常常用到。框架

2.CoreGraphics異步

  Quartz 2D:IOS上繪圖的主要引擎,是一組二位繪圖和渲染API。socket

  Core Graphics:它支持圖形上下文、加載圖像、繪製圖像,等等。 Core Graphics 使用的是系統的座標系來繪製圖片。編程語言

  Core Animation 幫助開發者在IOS上實現動畫的框架。工具

3.CoreLocation 用於定位開發工具

   MapKit 用於顯示地圖動畫

4. CFNetWork

  CFNetWork是蘋果提供的位於Core Foundation 中的一個基於C的底層框架,是對更底層OS層BSD socket的封裝,著名的網絡框架ASI網絡請求方面就是對CFNetWork進行封裝的。CFNetWork主要依賴倆個API,CFSocket 和CFStream,CFSocket主要用於網絡底層的通訊,而CFStream包括CFReadStream 和CFWriteStream,分別用於對Socket的讀取和寫入。

5.CoreData

第三方庫AFNetWorking,MKNetWorkKit,ASIHttpRequest,FMDB,ZXing,ZBar,SDWebImage

ZXing是一個開放源碼的,用Java實現的多種格式的1D/2D條碼圖像處理庫,它包含了聯繫到其餘語言的端口。Zxing能夠實現使用手機的內置的攝像頭完成條形碼的掃描及解碼。

ZBar也是一個掃描二維碼的類庫 是基於c語言寫的

    ASIHttpRequest 是使用iOS SDK中的HTTP網絡請求API,至關的複雜,調用很繁瑣,ASIHTTPRequest就是一個對CFNetwork API進行了封裝,而且使用起來很是簡單的一套API,用Objective-C編寫,能夠很好的應用在Mac OS X系統和iOS平臺的應用程序中。ASIHTTPRequest適用於基本的HTTP請求,和基於REST的服務之間的交互。

以前一直在使用ASIHTTPRequest做爲網絡庫,可是因爲其中止更新,iOS7上可能出現更多的問題,因而決定更換網絡庫。

目前比較流行的網絡庫主要有AFNetworking和MKNetworkKit,通過一番google後,得出這三個庫之間的比較以下:

 
AFNetworking
MKNetworkKit
ASIHTTPRequest
更新狀況 維護和使用者相對多 維護和使用者相對少 中止更新
支持iOS和OSX
ARC
斷點續傳
否,可經過AFDownloadRequestOperation
同步異步請求 只支持異步
圖片緩存到本地
否,經過SDURLCache或AFCache
圖片緩存到內存
後臺下載
下載進度 否,可經過AFDownloadRequestOperation
緩存離線請求 否,經過SDURLCache或AFCache
JSON、XML

根據以上對比,AFNetworking雖然相比MKNetworkKit功能要弱一些,可是它的擴展性更強,並且維護者比較多,從長期來看要優於MKNetworkKit。

相關文章
相關標籤/搜索