你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發基礎 >> 快快快!27個提升效率的iOS開源庫推薦

快快快!27個提升效率的iOS開源庫推薦

編輯:IOS開發基礎

我熱愛開源,更喜愛那些花費寶貴的業余時間來創造奇跡的開發者們,感謝他們將自己辛苦勞動的成果無償分享給大家。開源作者和貢獻者們,你們太了不起了,感謝你們所付出的一切。

鑒於我是收集不全會死星人,這裡我根據個人喜好選取了一些iOS的開源庫。這些項目的順序完全隨機,每個都棒到爆。絕大多數支持CocoaPods,所以將它們添加到你的Xcode項目中只是小事一樁。

在本文末尾你可以找到一個長文慎入版本——一個只包含題目與項目鏈接的簡單列表。如果你覺得這篇文章有用的話,請把它分享給其他做iOS開發的小伙伴們,好酒也怕巷子深。

1. DZNEmptyDataSet

DZNEmptyDataSet算是一個很標准的iOS內建方式,適合用來處理空的table view和collection view。默認情況下,如果你的table view為空,屏幕就為空,這樣一來用戶體驗並不理想。

1.jpg

使用這個庫,你只需遵守一些協議,iOS就會自動將collection view處理完善,並將用戶消息以合適美觀的方式顯示出來。每個iOS項目都可以自動處理,不用再一一費神。

2. PDTSimpleCalendar

你的應用需要一個簡單美觀且正常運行的日歷組件嗎?現在有了——PDTSimpleCalendar也許可以算是iOS最棒的日歷組件了。你可以在各個方面對它進行定制,無論是運行邏輯還是外觀方面。

2.jpg

3. MagicalRecord

他們都說:Core Data簡潔易用。他們又說:很棒很好用噢。哈?真的嗎,蘋果?添加到各個項目中的大量樣板數據完全不符合簡潔而易用的標准。更別提添加、移除和更新那一大堆的entities、保存context、按不同環境創建不同的Core Data堆棧等等。當然,我很喜歡Core Data,但是蘋果真的可以把它更好地簡化一下——使用MagicalRecord方式。

3.jpg

MagicalRecord就像是給Core Data提供了一層外包裝,隱藏掉所有不相關的東西。如果你曾經使用過active record模式(比如Ruby on Rails),你就知道了。傾情推薦,在應用中使用Core Data的童鞋們可一定要試試。

4. Chameleon

如果你已經看到這裡了,我猜你更有可能是個程序猿,而不是設計獅。這裡有個東東很適合你。

4.jpg

Chameleon是一個iOS的色彩框架。它運用現代化flat color將UIColor擴展地非常美觀。我們還可以通過它運用自定義顏色創建調色板。它還有很多功用,請浏覽readme。如果你想要應用美觀的話,一定要把這個庫加到項目裡。

4-2.jpg

5. Alamofire

Alamofire是一個簡潔的網絡庫,用Swift語言編寫。你是否曾經使用過AFNetworking呢?Alamofire是它的小弟。更年輕更時尚,當然(AFNetworking是用Objective-C編寫的)。

5.jpg

如果你需要進行網絡的相關工作,諸如下載、上傳與獲取JSONs等等的話,Alamofire正是你所需要的。GitHub上8000人次推薦,一定不會錯。

6. TextFieldEffects

你不覺得標准的UITextField有些枯燥麼?我也這樣想——來認識一下TextFieldEffects吧!廢話不多說,只要看幾個例子:

6.gif

是啊,都是些簡單的dropin控制器。你甚至可以在storyboard中使用IBDesignables。

不幸地是:這個庫不支持CocoaPods(如果你來自未來,而這一情況什麼時候會改變的話,一定要在Twitter上告訴我),但是它支持Carthage。你只管從GitHub上下載項目,把它放入你的workspace就行了。

7. GPUImage

你曾經寫過照相機應用嗎?如果沒有的話,很快你一定會遇到這個庫的。

7.jpg

GPUImage為我們提供了一個GPU加速的照相機效果(同時支持照片與視頻),而且處理速度飛快。在App Store中,使用這個庫的應用數以百計。我有一個應用也用到了GPUImage。 它在GitHub上獲得了8869個star,而且還在增長。

7-2.jpg

8. iRate

想要在App Store中獲得更多評論的最佳方式是什麼?想要回答這個問題,我缺乏切實數據,但如果必須猜一下的話,我會建議問問用戶。也許這樣做有點老套——大多開發者現在都有創建定制的應用內置alert。

但是如果你沒有時間,或者不想從頭實現的話,最好用一下iRata。這個就是iRata——一個小型庫——你可以把它放入項目中,把問卷調查什麼的都忘記吧,iRate會在恰當的時候為你解決這個問題。

9. GameCenterManager

無論你喜不喜歡單例模式,管理一個GameCenter都比我們已知的其他相反模式要好很多。(你的游戲只有一個GameCenter,對嗎?)

9.jpg

說實話,在iOS上管理GameCenter vanilla並不算難,但是有了這個庫會更簡單也更快。好上加好不是更好麼。

9-2.jpg

我在我一個游戲中用到了這個,體驗很好。

10. PKRevealController 2

這個要注意,真的很棒!是我最喜愛的iOS控件之一。PKRevealController是一個可以滑動的側邊欄菜單(可向左、向右或者同時向兩側),只需手指輕輕一點(或者按一下按鈕,但是這樣滑動時不夠炫酷)。

10.jpg

我試過一些可以提供這類控制的其他庫,而PKRevealController是最棒的。安裝簡便,高度定制且對手勢識別良好。可以當做一個標准控件用在iOS SDK中。

11. SlackTextViewController

你曾經用過Slack iOS應用嗎?如果你在較大的軟件公司工作,也許會用過。對那些沒用過的人呢?—?Slack令人激動。用到Slack的應用也是這樣,尤其是用作極佳、定制的文本輸入控制時。這時你有了一個現成可用在應用中的代碼。

自適應文本區域?試一下。

手勢識別、自動填充、多媒體合並?試一下。

快速drop-in解決方案?試一下。

其他還想要什麼?

12. RETableViewManager

RETableViewManager可以幫助你進行動態創建與管理table views。它給我們提供了預定義cells(bool類型、文本、日期等等——請看下面的截圖),但是你還可以創建自定義views,並與默認視圖一同使用。

12.jpg

左側截圖顯得非常古板!在storyboard中沒有這個庫的時候,你能做的就是這些了,但是有時候代碼比可視化編輯器要好。

13. PermissionScope

用這個庫可以在詢問用戶前,就告知用戶所需的系統權限,為用戶帶來更好的體驗。接受度更高—>更多活躍用戶->更高的留存率->數據更好->下載率更高。牆裂推薦pod。

13.jpg

14. SVProgressHUD

這張圖片在正常加載,無需等待太久或者刷新頁面。這正是SVProgressHUD在你的應用中的表現。如果你需要定制化的等待提示器,這個就是了(也許是最好的)。

14.jpg

15. FontAwesomeKit

Font Awesome很棒,有了它你可以很容易地給項目加字體,使用方式繁多。

15.jpg

16. SnapKit

喜歡自動布局嗎?當然喜歡!至少在storyboard中創建時會喜歡。 在代碼中純手工創建約束灰常痛苦,但幸運的是我們有了SnapKit,在board中用上它,你可以簡單直觀地編寫約束了。

16.jpg

17. MGSwipeTableCell

這是另一個常見於很多應用中的UI組件,蘋果應該考慮在標准的iOS SDK中加入一些類似的內容。Swipeable表格cell是這個pod的最佳描述,也是最好的。

17.gif

這只是其中三個動畫類型,還有更多變化,請查看readme。

18. Quick

用於Swift中的單元測試(也可用於Objective-C),與Xcode整合在一起。如果你是Objective-C的粉絲,我建議用Specta代替這個,但是對Swift使用者來說,Quick是最佳選擇。

18-1.jpg

18-2.jpg

19. IAPHelper

應用內付費給我們提供了很多樣本代碼,而這個庫丟掉了那些代碼,將金錢交易相關的大多通用任務做了簡單的封裝。

20. ReactiveCocoa

好吧,這是個小怪物。

ReactiveCocoa並不像列表中其他庫一樣,它不是小型的drop-in項目。ReactiveCocoa給我們帶來了一個迥異的編程風格與結構,它是基於信號與數據流的。首先你需要忘掉已知的一切,才能理解它的工作方式。很有難度,但是價值不斐。

20.jpg

在這裡教ReactiveCocoa有點不合適,但是如果你感興趣的話,我會提供一些好源:

  • Getting Started with ReactiveCocoa

  • Mattt Thompson:ReactiveCocoa

  • ReactiveCocoa Tutorial – The Definitive Introduction: Part 1/2

注意:對我們iOS開發社區的朋友來說,這會是一個稍微有些技術含量的活兒。

21. SwiftyJSON

使Swift的JSON解析變得簡單。

22. Spring

使動畫在簡單性、可鏈接性與聲明性方面有所提高。

22.jpg

23. FontBlaster

載入定制字體時更簡單。

24. TAPromotee

交叉推廣應用是你可以免費實現的最佳市場推廣策略之一。使用這個庫做起來非常簡單,不用都不可能——將TAPromotee加入你的podfile中,免費配置與享受更多下載吧。

24.jpg

25. Concorde

你在應用中載入了一堆jpeg嗎?有了Concorde,你可以用更好的方式來解決,這是一個很大的進步。

25.gif

26. KeychainAccess

管理Keychain接入的小助手。

26.jpg

27. iOS-charts

最後一個,但絕不是最不重要的——iOS圖表庫!非常有用而且美觀,這裡我無需贅言。向下看,你就知道用它可以做什麼了。

27.jpg

沒錯,一切都變成了drop-in組件了(也許是“code-in組件)。

27-2.jpg

27-3.jpg

不幸的是,它還不支持CocoaPods,所以你得手動把它拽到你的Xcode workspace裡面去。

超長慎入列表:

  1. DZNEmptyDataSet(UI,空表格視圖解算器)

  2. PDTSimpleCalendar(UI,drop-in日歷組件)

  3. MagicalRecord(實施活躍記錄模式的Core      Data助手)

  4. Chameleon(UI,色彩框架)

  5. Alamofire(Swift 網絡)

  6. TextFieldEffects (UI,自定義外觀的文本區域)

  7. GPUImage(快速圖片處理)

  8. iRate(獲取用戶評價)

  9. GameCenterManager(快速管理游戲中心)

  10. PKRevealController(UI,滑動側邊欄菜單)

  11. SlackTextViewController(UI,高度可定制的自定義文本區域)

  12. RETableViewManager(自動以代碼創建表格視圖)

  13. PermissionScope(UI,預詢問用戶系統權限的友好體驗)

  14. SVProgressHUD (UI,自定義等待進度條)

  15. FontAwesomeKit (快速添加Awesome字體)

  16. SnapKit(在代碼中快速自動布局)

  17. MGSwipeTableCell (UI,可滑動的表格視圖cell)

  18. Quick(Swift單元測試框架)

  19. IAPHelper(應用內購買助手封裝)

  20. ReactiveCocoa(FRP框架)

  21. SwiftyJSON(Swift JSON庫)

  22. Spring(動畫框架)

  23. FontBlaster(在應用中快速載入個性化字體)

  24. TAPromotee(使用drop-in視圖交叉推廣應用)

  25. Concorde(下載解碼漸進式jpeg)

  26. KeychainAccess(簡便管理keychain)

  27. iOS-charts(美觀的圖表庫)

(翻譯/孫薇 審校/唐小引)

文章來源:Medium

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved