pod 'Moya'? 網(wǎng)絡(luò)請(qǐng)求的封裝
pod 'Moya/RxSwift'? http://www.reibang.com/p/76211eed0ab3,RxSwift是一個(gè)針對(duì)于Swift語(yǔ)言的響應(yīng)式編程框架奕枢,旨在使異步操作和事件/數(shù)據(jù)流的實(shí)現(xiàn)變的簡(jiǎn)單点额。
pod 'Alamofire' 就是swift版本的AFNetworking
pod 'RxDataSources',RxDataSources是使用RxSwift對(duì)UITableView和UICollectionView的數(shù)據(jù)源做了一層包裝涎劈。作者一開(kāi)始在嘗試的時(shí)候就沒(méi)有包含這個(gè)庫(kù),結(jié)果一啟動(dòng)就Crash,一啟動(dòng)就Crash,無(wú)限循環(huán)
pod 'SnapKit' SnapKit是Masonry的Swift版
pod 'UITableView+FDTemplateLayoutCell' 讓cell高度的自適應(yīng)變得格外容易!
pod 'SDAutoLayout' 自動(dòng)布局庫(kù)
pod 'SwiftyUserDefaults' 方便操作NSUserDefaluts的第三方庫(kù)
pod 'Hashids-Swift' , git: "https://github.com/malczak/hashids.git" , :branch => 'master' 用來(lái)把整數(shù)生成唯一字符串(比如:通過(guò)加密解密id來(lái)隱藏真實(shí)id)
pod 'EZSwiftExtensions'對(duì)Swift標(biāo)準(zhǔn)庫(kù)芽唇, Foundation, UIKit 提供了很多高級(jí)擴(kuò)展函數(shù)
pod 'Reachability' 監(jiān)測(cè)網(wǎng)絡(luò)
pod 'IQKeyboardManagerSwift' IQKeyboardManager是iOS中解決鍵盤(pán)彈起遮擋UITextField/UITextView的一種很實(shí)用的工具取劫。無(wú)需輸入任何代碼,不需要額外的設(shè)置
pod 'SwiftyJSON' json-swift和SwiftyJSON都使用了一個(gè)自定義的枚舉類型來(lái)描述JSON數(shù)據(jù)匆笤;通過(guò)重載實(shí)現(xiàn)了類似Array和Dictionary的下標(biāo)操作;并可以將NSData類型的json實(shí)例轉(zhuǎn)換成其對(duì)應(yīng)的枚舉類型的實(shí)例
pod 'SVProgressHUD' 加載提示框
pod 'YYWebImage'
pod 'YYImage/WebP'
pod 'YYImage'
pod 'SDWebImage'
pod 'VTMagic'VTMagic有很多開(kāi)發(fā)者曾嘗試模仿寫(xiě)出類似網(wǎng)易谱邪、騰訊等應(yīng)用的菜單分頁(yè)組件炮捧,但遍觀其設(shè)計(jì),大多都比較粗糙虾标,不利于后續(xù)維護(hù)和擴(kuò)展寓盗。琢磨良久,最終決定開(kāi)源這個(gè)耗時(shí)近兩年打磨而成的框架璧函,以便大家可以快速實(shí)現(xiàn)類似需求,而不用把大量的精力浪費(fèi)在重復(fù)造輪子的過(guò)程中基显,VTMagic目前在多個(gè)項(xiàng)目中穩(wěn)定運(yùn)行一年多蘸吓。
pod 'XZMRefresh'? ? ? ? ? ? #橫向刷新
pod 'FMDB'
pod 'MJRefresh'
pod 'FCUUID' FCUUID獲取UUID,并未確定是否會(huì)被拒
pod 'DZNEmptyDataSet'大多數(shù)應(yīng)用程序都會(huì)顯示內(nèi)容列表(datasets)撩幽,但是某些情況下可能會(huì)是空的库继,尤其是新用戶的賬戶信息箩艺。一旦產(chǎn)生錯(cuò)誤或bug,空白屏幕會(huì)使用戶困惑宪萄,不知道要做什么艺谆,所以Empty DataSet模式應(yīng)該能夠給用戶提示相關(guān)信息。
1拜英、CryptoSwift
swift加密庫(kù), 支持md5,sha1,sha224,sha256...
2静汤、Kingfisher
Kingfisher 是一個(gè)異步下載和緩存圖片的庫(kù) 類似于SDWebImage
3、PeekPop
3DTouch動(dòng)畫(huà)組件
4居凶、AlamofireObjectMapper
將Alamofire JSON響應(yīng)數(shù)據(jù) 轉(zhuǎn)為swift對(duì)象
5虫给、RxAlamofire
為Alamofire提供 函數(shù)響應(yīng)式(FRP)調(diào)用接口
以優(yōu)雅的方式使用Alamofire進(jìn)行網(wǎng)絡(luò)請(qǐng)求
6、PromiseKit
異步編程類庫(kù) 提供了很多實(shí)用的異步函數(shù) 讓異步編程更簡(jiǎn)單
7侠碧、EZSwiftExtensions
對(duì)Swift標(biāo)準(zhǔn)庫(kù)抹估, Foundation, UIKit 提供了很多高級(jí)擴(kuò)展函數(shù)
8弄兜、Aspects
swift面向切面編程(AOP)庫(kù) 【Method Swizzling】
9药蜻、PermissionScope
權(quán)限管理庫(kù) 提供申請(qǐng)權(quán)限授權(quán)操作
10、Alamofire
網(wǎng)絡(luò)操作庫(kù) 基本都知道
1.Alamofire
當(dāng)你想要抽象簡(jiǎn)化App中的網(wǎng)絡(luò)請(qǐng)求時(shí)替饿,Alamofire是你需要的语泽,Alamofire是一個(gè)Http網(wǎng)絡(luò)請(qǐng)求庫(kù),構(gòu)建在NSURLSession和基礎(chǔ)URL加載系統(tǒng)之上盛垦,它用簡(jiǎn)單優(yōu)雅的接口很好的封裝了網(wǎng)絡(luò)請(qǐng)求湿弦。
2.SwiftyJSON
swift的Explicit types(顯示類型)可以確保我們不會(huì)在代碼中犯錯(cuò)和出現(xiàn)bug。但是有時(shí)處理起來(lái)還是比較麻煩腾夯,特別是和JSON打交道的時(shí)候颊埃。幸運(yùn)的是,SwiftyJSON提供了可讀性更好的方式幫我們處理JSON數(shù)據(jù)蝶俱。還提供了可選的自動(dòng)解析班利!
3.ObjectMapper
如果你寫(xiě)過(guò)一個(gè)通過(guò)API獲取信息的app,你可能需要花大量時(shí)間寫(xiě)代碼把你的響應(yīng)結(jié)果映射為你的object。ObjectMapper可以幫你把JSON格式響應(yīng)結(jié)果轉(zhuǎn)換成你的model對(duì)象榨呆,反之亦然罗标。換句話說(shuō),它幫你把JSON映射成對(duì)象积蜻,也可以把對(duì)象轉(zhuǎn)換成JSON闯割。嵌套的對(duì)象也支持。
4.Quick
Quick是一個(gè)行為驅(qū)動(dòng)(BDD)開(kāi)發(fā)框架,它的靈感來(lái)自于 RSpec,Specta, 和Ginkgo竿拆。配合Nimble一起使用宙拉,Nimble是一個(gè)測(cè)試匹配框架。
5.Eureka
Eureka可以幫你簡(jiǎn)單優(yōu)雅的實(shí)現(xiàn)動(dòng)態(tài)table-view表單丙笋。它由rows,sections和forms組成谢澈。如果你的app包含大量表單煌贴,Eureka可以真正幫你節(jié)省時(shí)間。
6.RxSwift
RxSwift是一個(gè)基于Swift的的函數(shù)式響應(yīng)編程框架锥忿。更具體點(diǎn)牛郑,RxSwift是是Rx的一個(gè)Swift語(yǔ)言版本(還有Java版本RxJava,js->RxJs)它的目標(biāo)是讓異步和事件數(shù)據(jù)流操作更簡(jiǎn)單。KVO observing, async operations and delegates are all unified under abstraction of sequence(還沒(méi)來(lái)的及學(xué)習(xí)掩面哭)敬鬓,如果你已經(jīng)使用過(guò)ReactiveCocoa淹朋,你接受起來(lái)會(huì)比較簡(jiǎn)單(都是函數(shù)式編程思想)
7.SnapKit
SnapKit是一個(gè)用少量代碼寫(xiě)出不丟可讀性auto layout的AutoLayout庫(kù)。
8.Spring
spring是一個(gè)可以幫你用代碼或者直接在Storybard創(chuàng)建動(dòng)畫(huà)的動(dòng)畫(huà)庫(kù)列林,在Storyboard你可以用runtime(通過(guò)設(shè)置IBInspectable屬性)來(lái)創(chuàng)建動(dòng)畫(huà)瑞你,Spring已經(jīng)成長(zhǎng)為一個(gè)全面發(fā)展的動(dòng)畫(huà)庫(kù) 支持很多已經(jīng)存在的動(dòng)畫(huà)。
9.Kingfisher
Kingfisher是一個(gè)輕量的下載和緩存網(wǎng)絡(luò)圖片庫(kù)希痴。下載和緩存是異步進(jìn)行操作者甲,已經(jīng)下載好的圖片會(huì)緩存在內(nèi)存和本地,極大得提高app的體驗(yàn)砌创。
10.CoreStore
CoreStore是一個(gè)基于Core Data的封裝庫(kù)虏缸。它的目標(biāo)是安全優(yōu)雅和Core Data進(jìn)行交互。CoreStore的API提供了常用的有效的方法讓你和你的數(shù)據(jù)庫(kù)進(jìn)行交互嫩实。