27款iOS 開源庫,讓你的開發溜到飛起
來自:開源中國
原文:https://medium.com/app-coder-io/27-ios-open-source-libraries-to-skyrocket-your-development-301b67d3124c#.fvlh0oidk
翻譯: Tocy, Viyi, leoxu, xufuji456, 愛不愛吃魚, 無若, vickyday, Lohanry
我在處理自己的 App 的日常工作中,收藏了一些 iOS 開源庫,本文我只從中選擇了一部分。這些項目的排序是隨機的,但是它們都很棒。
多數庫支持 CocoaPods,所以很容易把它們加到你的 XCode 項目中。
1、DZNEmptyDataSet
這是 iOS 內建的標準,用於處理空表和集合視圖。默認情況下,如果你的表視圖是空的,屏幕上什麼也不會顯示。它給予的用戶體驗還不算最佳。
使用這個庫,你只需要一些協議,iOS 就會很好地處理集合視圖,然後合理美觀地顯示出用戶信息。你不需要為每一個 iOS 項目費心。
CocoaPods:
pod DZNEmptyDataSet
2、PDTSimpleCalendar
你的應用需要一個好看的日曆組件嗎?現在你有了?—?PDTSimpleCalendar 可以說是最好的 iOS 日曆組件。你可以通過許多方法定義它,包括工作邏輯和視覺效果。
CocoaPods:
pod PDTSimpleCalendar
3、MagicalRecord
有人說 Core Data 簡單。也有人說它不僅簡單而且美觀。這說的是蘋果嗎?巨多的封裝代碼被添加到工程裡面並不會非常優雅和簡單的,更別提要添加、刪除和更新如此多的實體、保存上下文,為不同的環境創建不同的 Core Data 棧等等等等這些事情了。我當然也很喜歡 Core Data, 但蘋果公司真應該用更好的方式把它簡化一下了 —?MagicalRecord 的方式就可以。
MagicalRecord 就像是針對 Core Data 的一個封裝,隱藏了所有跟開發者無關的東西。如果你用過動態記錄模式(例如, Ruby on Rails 就有用到)的話, 那這個非你莫屬。如果你的應用裡面也使用到了 Core Data,那我真的非常非常推薦這個庫。
CocoaPods:
pod MagicalRecord
4、Chameleon
如果你正讀到這個,那麼比起設計師,你可能會是一個更好的程序員。而這個就是為你準備的。
Chameleon 是一個 iOS 的顏色框架。它擴展了 UIColor,加入了漂亮的、現代扁平化風格的顏色。它也讓我們可以從由我們自己定義的顏色創建出調色板。通過閱讀 readme,你會發現它還能做很多其它的事情。如果你想要的是一個漂亮的應用程序,絕對要把這個庫添加到代碼工程裡面。
CocoaPods:
pod ChameleonFramework
5、Alamofire
Alamofire 是一個寫在 Swift 上的十分美觀的網路文庫。你有使用過 AFNetwork 嗎?Alamofire 就是它的姐妹版,但 Alamofire 更新穎,更有型,當然(AFNetwork 是寫在 Objective-C 上的)。
是否還需要做一些網路的東西,例如下載,上傳,獲取 JSON 等等呢?Alamofire 已經為你準備好了。GitHub 上 8000 人的選擇肯定不會錯。
CocoaPods:
pod Alamofire
6、TextFieldEffects
你是不是感覺標準的 UIT 文本域有點無聊?我也有這樣的感覺——讓我們來跟 TextFieldEffects 打個招呼吧! 我不會寫太多,只是為你展示一些這個文庫可以做到的事例:
點擊播放 GIF/13K
點擊播放 GIF/21K
點擊播放 GIF/12K
是的,這些是簡單的下拉插入鍵。你甚至可以利用腳本里的 IBDesignables!
CocoaPods:
pod TextFieldEffects
Carthage:
github "raulriera/TextFieldEffects"
7、GPUImage
你是否有創建過相機 App 的經歷?如果沒有,你一定會在不久之後遇到這個庫的。
GPUImage 為我們提供了由 GPU 加速的相機預覽效果(包括圖像和視頻),速度極快。 在 App Store 有數百個 App 已經使用這個庫——我其中的一個也使用了:
我的一個使用 GPUImage 的 App,在 GitHub 上有8869 顆星,並且還在不斷增加中。
CocoaPods:
pod GPUImage
8、iRate
在 App Store 中獲得更多評論的最好方法是什麼? 我沒有實際數據來回答這個問題,但如果我不得不猜測的話,我會說直接去問用戶。也許這麼做是一個很老式的方式——大多數開發人員現在創建自定義的 App 提示窗——但如果你沒有時間或你不想一切從頭開始,最好是使用 iRate 而不是不用。iRate 是這樣的:一個你可以包含到你的工程中,並且不需要考慮要求用戶評論的小型庫——iRate 將會在合適的時機自動完成這個。
CocoaPods:
pod iRate
9、GameCenterManager
不管你喜歡或討厭單例子,在這裡通過我們最熟悉的 anti-pattern (反模式)管理 Game Center 都是一件非常簡單的事(你的遊戲里只有一個 Game Center 在,不是嗎?)
老實說,vanilla-managing 在 iOS 中管理 Game Center 並不是很難,但是使用這個庫就更加簡單和快捷了。
我正在我的一個遊戲項目中使用它,它帶給我愉快的體驗。
CocoaPods:
pod GameCenterManager
10、PKRevealController 2
這個是我最喜歡的 iOS 控制項之一,它就像一個寶石。PKRevealController 是一個側滑的菜單(左,右,或者同時),滑向哪邊是看你的使用習慣(或者僅僅通過一個按鈕,但是這樣看起來並沒有像滑動那樣的 Cool)。
關於類似功能,我嘗試過不少其他的庫,但是 PKRevealController 給我的感覺是最好的,非常簡單的設置,高度的自定義,手勢的識別非常好。這個真的可以被包括在 iOS 的 SDK 中,作為一個標準庫。
CocoaPods:
pod PKRevealController
11、SlackTextViewController
你使用過 Slack iOS 的 App 嗎?如果你在一個大型的軟體公司工作,可能答案是肯定的。但也有一些人尚未接觸 Slack。 Slack 的 iOS App 非常強大,尤其是它的自定義文本輸入控制項,這裡有一段代碼,你可在 App 中使用!
需要自動增長的文本區域?驗證時候需要手勢識別、自動完成、多媒體粘貼? 需要易於方案集成?你還可能需要什麼其他功能呢?
CocoaPods:
pod SlackTextViewController
12、RETableViewManager
RETableViewManager 將幫助您動態創建和管理表視圖,自動生成控制代碼。 它為我們提供了預定義的單元格(對於 bools,文本,日期等 - 請查看下面的屏幕截圖),但你也可以創建自定義視圖,並支持與默認的視圖一起使用。
所有這些元素, 。但有時簡單的代碼比可視化編輯器更好。
CocoaPods:
pod RETableViewManager
13、許可權作用域
該庫通過在請求用戶之前通知用戶有關所需的系統許可權,以提供更好的用戶體驗。更高的接受率->更多活躍用戶使用 app->更佳反饋->更好狀態->更多下載量。鼎力推薦的 pod。
CocoaPods:
pod PermissionScope
14、SVProgressHUD
這個圖片展示的是正常下載,不用等到更長時間,也不用刷新頁面。這就是 SVProgressHUD 在 app 中所呈現的。假如你需要自定義等待提示,這裡有一個例子(可能是合適的)。
點擊播放 GIF/52K
CocoaPods:
pod SVProgressHUD
15、FontAwesomeKit
Font Awesome 是非常優秀的,使用這個庫可以簡單地添加字體到你的項目當中,另外還有很多其它方面的功能。
CocoaPods:
pod FontAwesomeKit
16、SnapKit
喜歡自動布局(auto layout)?應該是!至少在 storyboards 中創建的時候是這樣的。
在沒有幫助的情況下,在代碼上創建約束是痛苦的,幸運地是用 SnapKit 你可以很方便地通過聲明的方式,來約束你的代碼。來看看吧。
CocoaPods:
pod SnapKit
17、MGSwipeTableCell
這是另一個在很多應用里經常看到的 UI 模塊,Apple 也許應該考慮將之納入標準的 iOS SDK 里。Swipeable table cell(可擦除式表格單元)——是關於這個產品最好的描述。最好的一個。
點擊播放 GIF/159K
點擊播放 GIF/159K
點擊播放 GIF/211K
以上只是 3 種動畫類型,還有更多動畫類型,請查閱Readme。
CocoaPods:
pod MGSwipeTableCell
18、Quick
Swift 里的單元測試,適用於 Swift(好吧,Objective-C 也能用),已與 Xcode 集成。如果你是 Objective-C 粉,我更推薦 Specta,但是對於 Swift 來說,Quick 應該是最棒的選擇。
CocoaPods:
pod Quick
19、IAPHelper
應用內置支付給我們帶來大量的樣板代碼,這個庫簡單封裝了大量常見的任務來擺脫那些樣板代碼。它封裝功能都是關於如何將 iOS 用戶的錢送到你(或者你的公司)的錢包。
CocoaPods:
pod IAPHelper
20、ReactiveCocoa
這裡有一個小怪物。
不像這個列表中的其它項,ReactiveCocoa 不小而且不會嵌入項目中。ReactiveCocoa 給我們帶來不同的編程風格/架構,它基於信號和數據流。它令人感覺驚奇,不過你得先忘掉以前所學的內容才能理解它的工作原理。這不是一件容易的事情,但值得。
這裡並不適合教你 ReactiveCocoa,但是如果你有興趣,我會給你很好的資源。
CocoaPods:
pod ReactiveCocoa
21、SwiftyJSON
使得在 Swift 中的 JSON 解析更加簡便。
CocoaPods:
pod SwiftyJSON
22、Spring
使製作動畫變得容易、更具表達性,並且可鏈接。
CocoaPods:
pod Spring
23、FontBlaster
簡化自定義字體載入到 App 的實現。
CocoaPods:
pod FontBlaster
24、TAPromotee
這是交替宣傳 App 的最佳營銷策略之一,它可在 App 中免費實現。有了這個庫,一切操作都變得簡單,你會忍不住想試一試的——添加 TAPromotee 到你的 podfile 中,配置後,就可以免費享受更多下載量了。
CocoaPods:
pod TAPromotee
25、Concorde
你是否在 App 中載入了大量的 JPEG? Concorde 是一種漸進的載入方式,它可以讓圖片以更好看的方式載入出來。
點擊播放 GIF/455K
CocoaPods:
pod Concorde
26、KeychainAccess
這是一個小助手庫,用於管理 Keychain 訪問。
CocoaPods:
pod KeychainAccess
27、iOS-charts
最後同樣重要的是—— iOS 圖表庫!它非常實用,也非常優雅,因此我不用過於贅述——你只要滾動下頁面,就能知道使用這個項目能為你的 app 做些什麼。
一切都可以當成一個簡單的(也許可稱為「代碼嵌入」)組件使用。
遺憾的是目前還沒有支持 CocoaPods,所以你需要手工將項目拖動到你的 Xcode 工作區中。
TL;DR list of all these libraries for quick access:
1、DZNEmptyDataSet [UI, 解決空表顯示]
2、PDTSimpleCalendar [UI, 下拉日曆組件]
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 [把 Font Awesome 添到項目變得簡單]
16、SnapKit [在代碼中簡單地自動布局]
17、MGSwipeTableCell [UI, 讓表格視圖的單元格可滑動]
18、Quick [Swift 單元測試框架]
19、IAPHelper [內購助手]
20、ReactiveCocoa [FRP 框架]
21、SwiftyJSON [Swift JSON 庫]
22、Spring [動畫框架]
23、FontBlaster [在應用中簡單地載入自定義字體]
24、TAPromotee [通過下拉視圖全方位推廣你的應用]
25、Concorde [邊下載邊顯示 JPEG 圖像]
26、KeychainAccess [密碼管理器]
27、iOS-charts [漂亮的圖表庫]
本文編號2249,以後想閱讀這篇文章直接輸入2249即可。
※對,廣東億迅要招JAVA!
※你不知道的 Linux 使用技巧
※程序猿要不要考研?
※為什麼總有人黑 JavaScript?
TAG:程序猿 |
※曹格兒子9歲生日開游泳派對,Grace開心到飛起
※WHAT?開個衩就能時髦到飛起!
※iPhone 8正式開賣!日本「果粉」排隊買到激動得飛起
※一件長開衫,讓你時髦到飛起~
※Excel 2016的逆天功能,好用到飛起來!
※脫了bra,簡直爽到飛起~
※vivo X9s全新發布 新OS流暢到飛起
※一件長開衫,讓你時髦到飛起
※MIUI9開始公測,速度快到飛起
※iphone x獲批出售,依然只有64G和256G,價格貴的飛起!
※火到爆的印花襯衫,Saslax讓你時髦到飛起來!
※金改開啟,潛力股飛起-下一隻」西水股份」或將爆發
※快訊!我們的C919飛起來了!
※5個月沒回家,主人把自己包成禮物,狗狗看到後開心到飛起!
※胖迪、袁姍姍褲子開個叉,時髦到飛起!
※沒有Vera Wang也可以美得飛起,掌握這5招,拍出最近爆火的明星同款婚紗照!
※用好iOS 11這20個隱藏功能 iPhone立馬6666的飛起 不吹!
※華為自曝Mate10,麒麟970性能飛起!看到價格後:再見!
※爽到飛起!2017ChinaJoy精彩VR遊戲大盤點!