27個iOS開源庫,讓你的開發坐上火箭吧


轉:http://www.jianshu.com/p/228535226656?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io


27個iOS開源庫,讓你的開發坐上火箭吧

你不會想錯過他們,真的。

我愛開源。

並且我喜歡開發者們,把他們寶貴的私人時間用來創造神奇的東西,然後他們會和其他人分享並且不求回報。開源作者和貢獻者,你們是最帥的。感謝你們一直以來的工作。


所以,因爲我是一個分類整理狂,這是我從iOS開源庫中選出的最喜歡的這些項目的順序都是隨機的,全部都很酷。

絕大部分庫是支持CocoaPods的,所以把它們添加到你的Xcode項目中輕而易舉。

文章的尾部你會看到一個太長不看的版本——一個簡單的列表,只有標題和到項目的鏈接。如果你發現這篇文章是有用的,把它和你的iOS開發者兄弟們分享。好東西需要被傳播。

DZNEmptyDataSet

這本應該是iOS中一個標準、內置的解決空table和collection view的方式。默認的如果你的table view是空的,屏幕就是空的。但這不是你能提供的最好的用戶體驗。

用了這個庫,你只需要遵循一系列協議,iOS會優雅地接管你的collection view並且會正確、好看地顯示給用戶信息。很明顯,每個iOS項目都應該採用。



這是完全可自定義的。

CocoaPods:

pod ‘DZNEmptyDataSet’

GitHub


2. PDTSimpleCalendar

你的app是否需要一個簡單、好看並且有效的日曆組件呢?

現在你有了——PDTSimpleCalendar很有可能是最棒的iOS日曆組件。有很多方式來自定義它,邏輯有效而且好看。



CocoaPods:

pod 'PDTSimpleCalendar'

GitHub


3. MagicalRecord

他們說,Core Data很簡單。他們說,它很好很簡單。哈哈,你是認真的嗎,蘋果?一頓陳詞濫調的代碼被添加到每個項目裏,這真的不夠優雅和簡單。更不用說添加、移除和更新很多實體,保存上下文,爲不同的環境創建不同的Core Data棧,等等等等。我當然很喜歡Core Data,但是蘋果真的可以通過一個簡單的好方法來簡化它——MagicalRecord方法。

MagicalRecord的工作就像一個Core Data的包裝,並且向開發者隱藏了所有無關的東西。如果你曾經用過活躍紀錄模式(例如Ruby on Rails),那你已經掌握它了。如果你在app裏用Core Data的話真的真心推薦這個庫。

CocoaPods:

pod 'MagicalRecord'

GitHub


4. Chameleon

如果你讀到了這一點,你是一個很好的程序員,而不是一個設計師。這就是爲你準備的。



Chameleon是iOS的一個顏色框架。它用好看、摩登的扁平化顏色擴展了UIColor。它也給了我們能力來創建調色板,裏面是我們自己定義的顏色。它可以做很多其他事,探索readme文件。如果你想要好看的應用程序,快把這個庫加到你的項目裏吧。



Chameleon基礎扁平化顏色

CocoaPods:

pod 'ChameleonFramework'

GitHub


5. Alamofire

Alamofire是一個用Swift寫的優雅的網絡庫。你曾經用過AFNetworking嗎?ALamofire是它的弟弟。年輕也更有才華,當然啦(AFNetworking是用Objective-C寫的)。



需要做網絡相關比如下載、上傳、獲取JSON等等?Alamofire是爲你準備的。GitHub上8000人的選擇不會錯。

CocoaPods:

pod 'MagicalRecord'

GitHub


6. TextFieldEffects

你不覺得標準的UITextField有一點無聊嗎?我也是——所以對TextFieldEffects說hello吧!我不會寫太多,我只會展示你一些這個庫可以做的例子:







是的,這些就是簡單的易用的控制器。你甚至可以用storyboard裏的IBDesignable!

不幸的是這個庫不支持CocoaPods(如果你來自未來,而這在一些時間之前改變了的話,請在Twitter上讓我知道),但它支持Carthage。你也可以簡單的從GitHub下載項目,並且把它添加到你的workspace裏。

Carthage:

github "raulriera/TextFieldEffects"

GitHub


7. GPUImage

你曾經創建過一個攝像機app嗎?如果沒有,看完這個庫你就肯定會的。



GPUImage可能性

GPUImage提供我們一個GPU-accelerated攝像頭效果(圖像和視頻都可以),熊熊燃燒般的速度。App Store裏有幾百個app使用這個庫——其中就有我的一個:



我的一個app中用的GPUImage

GitHub上8869個收藏並且還在持續增加。

CocoaPods:

pod 'GPUImage'

GitHub


8. iRate

在App Store獲得更多評價最好的方式是什麼?我沒有明確的數據來回答這個問題,但如果要我來猜測的話,我會說只要簡單的詢問用戶就可以了。也許這是一個老套的方式——大部分開發者現在創建自定義的app內置提醒——但如果你沒有時間或者不想所有事都從頭做起,用iRate比不用要好。並且這就是iRate——一個小庫,你包含在你的項目裏並且忘記詢問用戶去評價了——iRate會自動替你完成,在合適的時間裏。

CocoaPods:

pod 'iRate'

GitHub


9. GameCenterManager

喜歡或討厭一個人,在這種情況下管理Game Center非常簡單,只需要一點我們最著名的反模式的幫助(你的遊戲裏只有Game Center,對吧?)



誠實地說,在iOS裏香草管理Game Center並不是那麼困難,但用這個庫就是簡單和快速。更好的是好的敵人。



我的一個遊戲裏就用了它,真是一個愉悅的體驗。

CocoaPods:

pod 'GameCenterManager'

GitHub


10. PKRevealController 2

這是一個真正的精品,我最喜歡的iOS控件之一。PKRevealController是一個可滑動的側邊欄(向左、向右或者都可以),用你的手指來滑動(或者只通過點擊按鈕,但這樣就沒有滑動酷了)。



我使用過一些其它庫,提供這種控件,PKRevealController是最好的。設置起來很簡單,高度可自定義,手勢識別非常非常好。它真的足夠成爲一個 iOS SDK 標準控件了。

CocoaPods:

pod 'PKRevealController'

GitHub


11. SlackTextViewController

你曾經用過Slack iOS app嗎?如果你在一個更大的軟件公司工作的話,很有可能回答是。對於沒有這麼回答的人——Slack很堅硬。Slack的iOS app也是,特別是對於很好的、自定義的文本輸入控件…就是你現在有的——你的app裏可以用的代碼!

自增長文本域?對的。手勢識別,自動填充,多媒體粘貼?對的。簡單的易用的?對的。你還可能需要什麼?

CocoaPods:

pod 'SlackTextViewController'

GitHub


12. RETableViewManager

RETableViewManager會幫助你動態創建和管理你的table view,都用代碼。它提供我們預先定義好的cell(布爾型、文本、日期等等。——看下面的截圖),你也可以創建你的自定義視圖,和默認的一起使用。



左側截圖好老套!

這些你都可以在storybard裏做而不需要這個庫的幫忙,但有的時候代碼比可視化編輯器更簡單。

CocoaPods:

pod 'RETableViewManager'

GitHub


13. PermissionScope

有用的庫,通過在詢問用戶之前提示用戶需要系統許可帶來更好的用戶體驗。高度可接受程度->更多用戶活動使用app->更好的留存->更好的數據->更多的下載。被高度推薦的pod。



CocoaPods:

pod 'PermissionScope'

GitHub


14. SVProgressHUD

這個圖片正在被正確的加載,不會等很久也不需要刷新頁面。這就是SVProgressHUD在你的app裏看起來的樣子。如果你需要自定義等待指示,這裏就有一個(很有可能就是最好的)。



CocoaPods:

pod 'SVProgressHUD'

GitHub


15. FontAwesomeKit

Font Awesome很酷,用這個庫你可以輕鬆地添加字體到你的項目裏,並且在多種方式裏使用它。



CocoaPods:

pod 'FontAwesomeKit'

GitHub


16. SnapKit

喜歡auto layout?你應該!

至少在storyboard裏創建的時候。

用代碼創建constraints是痛苦的,如果沒有幫助的話,但幸運的是SnapKit在這裏,使用它你可以輕鬆寫你的constraints,聲明方式。看看吧。



CocoaPods:

pod 'SnapKit'

GitHub


17. MGSwipeTableCell

另一個UI組件,在很多app裏都常見,蘋果應該考慮在iOS標準庫里加入類似的東西。可滑動的table cell,這是這個pod最好的描述。最好的一個。





這些只是3個動畫種類,還有很多。探索readme文件。

CocoaPods:

pod 'MGSwipeTableCell'

GitHub


18. Quick

Swift裏的單元測試,給Swift(好吧,要給Objective-C),和Xcode融爲一體。如果你是一個Objective-C粉,我會推薦你Specta而不是這個,但對於Swift Quick很有可能是最好的。




CocoaPods:

pod 'Quick'

GitHub


19. IAPHelper

app內購帶給我們很多陳詞濫調的代碼,用這個庫就不需要了,把最有關交易金錢的普遍的任務從iOS用戶到你的(或者你的公司的)錢包簡單包裝起來。

CocoaPods:

pod 'IAPHelper'

GitHub


20. ReactiveCocoa

好吧,這裏我們有一個小怪獸。



ReactiveCocoa並不是很小、易用的項目,就像這個列表裏其它項目一樣。ReactiveCocoa帶給我們一種完全不同的編程方式/結構,基於值的信號和流。這是完全的頭腦風暴,首先你需要忘記你曾經學習的來理解它是如何工作的。這不是一個簡單的任務,但是是有回報的。

這不是一個合適的地方來教你使用ReactiveCocoa,但我會給你一些好的資源,如果你感興趣的話。

Getting Started with ReactiveCocoa

ReactiveCocoa

ReactiveCocoa Tutorial - The Definitive Introduction: Part 1/2

CocoaPods:

pod 'ReactiveCocoa'

GitHub


21. SwiftyJSON

讓Swift裏的JSON解析更簡單。

CocoaPods:

pod 'SwiftyJSON'

GitHub


22. Spring

做動畫更簡單、可鏈和聲明。



CocoaPods:

pod 'Spring'

GitHub


23. FontBlaster

在app里加載自定義字體更簡單。

CocoaPods:

pod 'FontBlaster'

GitHub


24. TAPromotee

交叉推銷你的app是最棒的銷售策略之一,你可以在它們中免費實現。用這個庫非常簡單,你不再能爲自己辯解爲什麼不用它——增加TAPromotee到你的podfile,配置、然後免費享受更多下載。



CocoaPods:

pod 'TAPromotee'

GitHub


25. Concorde

在你的app加載很多JPEG嗎?用Concorde你可以加載地更好看。有進度的方式。



CocoaPods:

pod 'Concorde'

GitHub


26. KeychainAccess

管理鑰匙串權限的小幫手庫。





CocoaPods:

pod 'KeychainAccess'

GitHub


27. iOS-charts

最後但重要的——iOS圖表庫!很簡單和有效,我不會在這兒寫太多——滑動到下面去看在你的app用它可以幹嘛。
















是的,所有東西都是可用的,作爲一個可放進去(好吧,也許是“可寫進去”)的組件。

不幸的是目前還沒有CocoaPods支持,所以你需要手動拖動項目到你的Xcode workspace中。

所有庫的太長不看列表,快速訪問:

1. DZNEmptyDataSet [UI, 空table view解決方案]

2. PDTSimpleCalendar [UI, 可放入日曆組件]

3. MagicalRecord [Core Data幫手實現活動記錄模式]

4. Chameleon [UI, 顏色框架]

5. Alamofire [Swift網絡]

6. TextFieldEffects [UI, 自定義外觀text fields]

7. GPUImage [快速圖像處理]

8. iRate [獲得用戶評價]

9. GameCenterManager [輕鬆管理Game Center]

10. PKRevealController [UI, 滑動邊欄]

11. SlackTextViewController [UI, 高度自定義text field]

12. RETableViewManager [用代碼動態創建table view]

13. PermissionScope [UI, 巧妙的提前問用戶要系統許可]

14. SVProgressHUD [UI, 自定義等待菊花]

15. FontAwesomeKit [輕鬆地添加酷字體到你的app中]

16. SnapKit [用代碼輕鬆auto layout]

17. MGSwipeTableCell [UI, 可滑動的table view cells]

18. Quick [Swift 單元測試框架]

19. IAPHelper [app內購封裝幫手]

20. ReactiveCocoa [FRP框架]

21. SwiftyJSON [Swift JSON庫]

22. Spring [動畫框架]

23. FontBlaster [輕鬆在app中加載自定義字體]

24. TAPromotee [在你的app中交叉提示,置入界面]

25. Concorde [下載和解碼進度化JPEGs]

26. KeychainAccess [輕鬆管理鑰匙串]

27. iOS-charts [漂亮的圖表庫]



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章