[摘要]本文是對10大iOS開發者最喜愛的類庫的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。
該10大iOS開發者最喜愛的庫由“iOS輔導團隊”成員Marcelo Fabri組織投票選舉而得,參與者包括開發者團隊,iOS輔導團隊以及行業嘉賓。每個團隊都要根據以下規則選出五個最好的庫:1)不能投自己寫的庫;2)排除大的架構,比如游戲類架構;3)排除不在設備上運行的庫,例如CocoaPods或者Rack::CoreData也排除在外。
最終評選出了如下10大iOS開發者最喜愛的庫:
1)SSToolkit
Sam Soffes簡直就是一個Objective-C天才,SSToolkit就是個例子。作者將他在App中實現的各種各樣的UI效果做成個代碼庫,方便其他人使用。
- SSToolkit一些基礎的類包括SSCollectionView,SSGradientView
- 從UI部件到便利的Foundation類別都經過精心設計並記錄在案,幫助開發者解決一些普遍問題,比如追蹤一款設備是否有視網膜顯示屏或者是否能剪裁圖片
2)GPUImage
GPUImage一個功能十分強大又十分易用的圖像處理庫。
- 提供各種各樣的圖像處理濾鏡,並且支持照相機和攝像機的實時濾鏡
- 是基於GPU的圖像加速,圖像處理速度超快,並且能夠自定義圖像濾鏡
- 支持ARC
不過現在還缺少一些Core Image擁有的一些先進功能,比如面部探測。
濾鏡效果圖
3)SocketRocket
SocketRocket是一個WebSocket客戶端(WebSocket是適用於Web應用的下一代全雙工通訊協議,被稱為“Web的TCP”,它實現了浏覽器與服務器的雙向通信),采用Object-C編寫。超級穩固又簡單易用,簡直就是實時應用的最佳拍檔。
- SocketRocket遵循最新的WebSocket規范RFC 6455
- 只有部分比較新的浏覽器比如Chrome支持這個庫
- 支持TLS (wss),iOS 4.x系統
- 使用NSStream/CFNetworking(可免費享用)、使用ARC
- 采用並行架構
- 大部分的工作由後端的工作完成、基於委托編程。無任何UI包依賴。
因為Square,才有了SocketRocket
4)HockeyKit
HockeyKit是一個iOS Ad-Hoc自動更新框架。所有的蘋果店中的App都可以使用它,它能顯著提高整個Beta測試過程,分為兩部分:服務器和客戶端框架。服務端組件不需要客戶端庫就能單獨工作。
- 只需在服務器上安裝一次服務端,就可以處理bundle identifier不同的多個應用程序(有開發者強烈建議對Debug、AdHocBeta和AppStore發布版使用不同的Bundle identifier)
- 默認當App啟動或喚醒時,客戶端會從服務器檢測更新,用戶可以在設置對話框中修改這個設置:一天一次或手動檢測更新
- 除了支持iOS,HokeyKit也支持Android平台,不過Android版還處在Alpha階段,支持OTA及應用內更新
- 為HockeyKit用戶提供服務器托管服務
Beta測試演示
5)JSONKit
JSONKit是Objective C平台上比較常用的JSON數據訪問工具。
- JSONKit能在運行的情況下與libz.dylib自動連接而無須人工連接
- 在解析期間,如果檢測到有gzip文件,JSONKit能自動解壓
- 速度超快,支持之前的iOS版本(但要注意一點,從iOS 5開始,iOS就已經有本地JSON解析工具了)
- JSONKit的性能遠優於JSON-Framework(即SBJSON),JSONKit使用起來也非常簡單,表現性能比蘋果iOS 5.0中的NSJSONSerialization還要好,速度比NSJSONSerialization快上25% to 40%,已經是非常大的一個差距了
Benchmark測試結果圖