33 款主宰 2017 iOS 開發的開源庫

發表於2017-06-20

你好,iOS 開發者們!我的名字是 Pawel,是一名 iOS 獨立開發者,也是  Enter Universe 的作者。

大概在兩年前,我釋出了 提升開發的 27 個 iOS 開源庫。這篇文章是我的一個最佳紀錄(使用者好評數):

33 款主宰 2017 iOS 開發的開源庫

因為有15.5萬人關注過這個話題,為了幫大家找到最好的 iOS 開源庫,我又要發文了

檢視我的 GitHub 資料可以看到,距離上次發文,我又發現了180多個新的已加星標的庫,所以現在是更新我的內容的絕佳時機。

按需排列 33 個庫,提升你在 2017 年的開發。開始燃燒吧。

1. IGListKit

由 Instagram 開發人員製作,IGListKit 是用於構建快速靈活列表的資料驅動型的 UICollectionView 框架。此外,它可以幫助你在應用程式中避免大量使用檢視控制器的情況。可檢視 Ray Wenderlich 上的關於在你的專案中實現該庫的教程,或者從 Rodrigo Cavalcante 中看看關於將現有的 UITableView 遷移到 IGListCollectionView 的方法。

2. Realm

33 款主宰 2017 iOS 開發的開源庫

Realm 是一款移動資料庫,可直接執行在手機、平板電腦和可穿戴裝置中,它不僅適用於 iOS。如果你想嘗試與 Core Data 不同的東西,可以試試使用 Realm 。許多人說,它是一種現代化的、高效率的用於原生蘋果解決方案的替代物

3. Moya

Moya 是你的應用程式所缺少的網路層。你不用思考將網路請求放到哪裡(以及如何放),Moya 會幫你處理這些問題。

33 款主宰 2017 iOS 開發的開源庫

4. SwiftyJSON

Swift 中的 JSON 解析之王。

將下面內容:

轉換為這種格式:

可選封裝會自動為你完成。

5. Valet

Valet 可以幫助你實現將資料安全地儲存在 iOS 或 OS X Keychain 中,而無需瞭解任何 Keychain 相關的工作原理。它支援在單個裝置上的多個應用程式(同一開發者)之間共享資料,並在具有 iCloud 的裝置上的實現跨裝置的資料共享。它還支援 Touch ID 。

6. Firebase Analytics

它(由 Google 出品)可能是 iOS 上最好的免費分析解決方案。包括跟蹤應用程式使用量、使用者活躍度,以及事件;設定使用者屬性;建立自定義受眾;和一些其他功能。

7. AsyncDisplayKit

Facebook 為他們的 app Paper創造了這個非同步 UI SDK。如果你想讓你的 app 總是每秒用 60 幀的速度來渲染,一定要看看這個庫。 這兒有一篇來自 Buffer 團隊的故事

8. DZNEmptyDataSet

通常使用者安裝一個 APP 後,會看到一個空的 UITableView 。DZNEmptyDataSet 可以通過提供預設的 Empty Data Set Pattern 的實現來回避這個問題。

33 款主宰 2017 iOS 開發的開源庫

9. Chameleon

33 款主宰 2017 iOS 開發的開源庫

Chameleon 是一個輕量卻功能強大的 iOS 顏色框架軟體。它基於的理念是:軟體應用程式應該可以不費力氣且同時保持多個漂亮的介面。

使用 Chameleon ,你不再需要調配 RGB 值,不用浪費時間去找你的 APP 合適的顏色組合,也不用擔心你 APP 的文字是否能在不同背景色上可讀。

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

10. PermissionScope

33 款主宰 2017 iOS 開發的開源庫

PermissionScope 是一個用於智慧請求使用者許可權的 Swift 框架。 它不僅包含一個簡單的使用者介面來請求許可權,還包含一個統一的許可 API ,可以告訴你任何指定的系統許可權的狀態或輕鬆地對它們發起請求。

33 款主宰 2017 iOS 開發的開源庫

11. FileKit

33 款主宰 2017 iOS 開發的開源庫

FileKit 是一個 Swift 框架,提供簡單而富有表現力的檔案管理。點此檢視使用示例

12. SwiftyUserDefaults

SwiftyUserDefaults 讓 user defaults 用起來很愉悅,通過結合極具表現力的 Swifty API 和靜態輸入的優勢。在一個地方定義鍵,輕鬆地使用值型別,並免費獲得額外的安全性和方便的編譯時檢查。

33 款主宰 2017 iOS 開發的開源庫

Kingfisher 是一款輕量級的純 Swift 庫,用於從 Web 上非同步下載和快取影象。

特性

  •  非同步影象下載和快取
  •  基於 URLSession 的網路。提供基本影象處理器和濾鏡。
  •  用於記憶體和磁碟的多層快取。
  •  可取消下載和任務處理以提高效能。
  •  元件獨立。可按需分別使用下載器或快取系統。
  •  預先獲取影象並在必要時將其從快取中顯示出來。
  •  包含 UIImageView、NSImage和UIButton擴充套件,可直接從 URL 設定影象。
  •  設定影象時可內建過渡動畫。
  •  可擴充套件的影象處理和影象格式支援。

14. Hero

33 款主宰 2017 iOS 開發的開源庫

Hero 是構建 iOS 檢視控制器過渡動畫的庫。它在 UIKit 繁瑣的過渡動畫 API 之上提供了一個層,使得自定義過渡動畫對於開發人員來說是一個輕鬆的任務。

15. Hedwig

33 款主宰 2017 iOS 開發的開源庫

Hedwig 是一個 Swift 包,提供一組高階 API,可以讓你輕鬆地傳送電子郵件到 SMTP 伺服器。如果你打算在下一個神奇的 Swift 伺服器應用裡傳送電子郵件,Hedwig 可能是一個不錯的選擇。

特性

  • 支援通過普通、SSL 或 TLS(STARTTLS)埠連線到所有的 SMTP 伺服器。
  • 支援使用 PLAIN、CRAM-MD5、LOGIN 或 XOAUTH2 進行認證。
  • 支援使用 HTML 正文和附件傳送電子郵件。
  • 支援自定義驗證方法和郵件標題,以跟蹤你的郵件活動。
  • 支援郵件按序傳送,甚至可以同時傳送郵件。
  • 支援 Swift Package Manager。
  • 完善的測試和文件

16. DeviceKit

DeviceKit 是 UIDevice 的值型別替換。可輕鬆獲取裝置的資訊和電池電量。

特性

  • 裝置識別
  • 裝置系列檢測
  • 裝置組檢測
  • 模擬器檢測
  • 電池狀態
  • 電池電量
  • Equatable

17. Charts

33 款主宰 2017 iOS 開發的開源庫

漂亮的曲線圖、餅狀圖、柱狀圖、散點圖、氣泡圖、雷達圖,更多的圖形都在 charts 庫裡。

33 款主宰 2017 iOS 開發的開源庫

18. MGSwipeTableCell

一個易於使用的 UITableViewCell 子類,可展示多種過渡方式的可滑動按鈕。

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

19. RandomKit

33 款主宰 2017 iOS 開發的開源庫

簡單易用的隨機資料生成器。

20. ResponseDetective

33 款主宰 2017 iOS 開發的開源庫

ResponseDetective 是一個非侵入式框架,在除錯時用於攔截應用程式和伺服器之間的任何的傳出請求和傳入響應,以進行除錯。

21. Onboard

僅需新增幾行程式碼,即可輕鬆建立一個美麗和吸引人的載入體驗。

 

22. Quick + Nimble

33 款主宰 2017 iOS 開發的開源庫

Quick 是一款專門用於 iOS 應用開發的開源行為驅動開發(BDD)測試框架,支援 Swift 和 Objective-C ,一般配合匹配框架 Nimble 使用。

23. Natalie

Natalie 生成基於 Storyboard 檔案的 Swift 程式碼,使 Storyboard 和 Segue 更容易使用。生成的檔案減少了用字串作為 Segue 或 Storyboard 的識別符號的情況。

24. RxSwift

對 Swift 的響應式程式設計感興趣? 那不妨試試 RxSwift 。

示例

指定 GitHub 儲存庫的搜尋 …

… 然後將結果繫結到你的檢視表

25. GDPerformanceView

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

GDPerformanceView 可以在狀態列上方顯示 FPS、CPU 使用情況以及應用版本和 iOS 版本,並通過 delegate 報告 FPS 和 CPU 使用情況。

26. Alamofire

33 款主宰 2017 iOS 開發的開源庫

Alamofire 是一個用 Swift 編寫的 HTTP 網路庫。

特性

  • 鏈式的請求/響應方法
  • URL / JSON / plist 引數編碼
  • 上傳型別支援:檔案(File )、資料(Data )、流(Stream)以及 MultipartFormData
  • 支援檔案下載,下載支援斷點續傳
  • 支援使用 NSURLCredential進 行身份驗證
  • 支援 HTTP 響應驗證
  • 上傳和下載進度可隨程式關閉
  • 支援 cURL 命令輸出
  • 支援動態修改和重試請求
  • 支援 TLS Certificate 和 Public Key Pinning
  • 網路可達性
  • 文件完善

27. SwiftyStoreKit

33 款主宰 2017 iOS 開發的開源庫

SwiftyStoreKit 是一個輕量級的 App 內購框架,支援 iOS 8.0+、tvOS 9.0+ 和 macOS 10.10+ 。

28. Timepiece

直觀的 Swift 日期處理庫。

特徵:

  • 直觀: Timepiece 提供了一系列輔助函式,使得日期處理更簡單。
  • 準確: 精確依賴於 Foundation API , Timepiece 可以在無需深入瞭解的前提下輔助計算日期。
  • : Timepiece 只有4個檔案,你可以很簡單的閱讀其內部結構。

29. CryptoSwift

用 Swift 實現的且用於 Swift 中的加密相關函式和輔助結構。

特點

  • 易用
  • 對於字串和資料方便擴充套件
  • 支援增量更新(流式更新)
  • 支援 iOS、 macOS、AppleTV、watchOS、Linux 等系統

30. FSCalendar

33 款主宰 2017 iOS 開發的開源庫

完全可定製的 iOS 日曆庫,相容 Objective-C 和 Swift 。

33 款主宰 2017 iOS 開發的開源庫

33 款主宰 2017 iOS 開發的開源庫

31. ImageViewer

一個類似 Twitter 的影象檢視器。

32. PromiseKit

33 款主宰 2017 iOS 開發的開源庫

PromiseKit 是對任意有 swiftc 的平臺的恰當而又完整的 promises 實現,它具有卓越的 Objective-C 橋接和專門為 iOS、macOS、tvOS 以及 watchOS 的特殊化處理。

33. Ensembles

33 款主宰 2017 iOS 開發的開源庫

Ensemble 是一個 Objective-C 框架,支援 Swift ,擴充套件了 Apple 的 Core Data 框架,為 Mac OS 和 iOS 新增了點對點的同步功能。多個 SQLite 持久儲存可以通過像 iCloud 或 Dropbox 這樣的檔案同步平臺整合在一起。該框架易於擴充套件,可支援任何需要在不同裝置之間傳輸檔案的服務,包括定製伺服器。

相關文章