一些iOS經常使用的第三方庫和控件及第三方框架還有動畫

網絡通訊

一、ASIHTTPRequest
這是一個經典的老庫,功能徹底而強大,但已經中止更新好久了(iOS5.0中止更新,可是我最近看github上這個項目有新改動)。在不一樣iOS版本上略微有一些小問題(提醒顯示上的),因此用的時候仍是稍微修改一下比較好。
下載地址:https://github.com/pokeb/asi-http-request
 
二、AFNetworking
輕量級的通信類庫,使用很是簡單。
下載地址:https://github.com/AFNetworking/AFNetworking
 
三、MKNetworkKit
最近作的不錯的一個通信類庫,具備AFNetworking和ASIHTTPRequest雙方的優勢,甚至功能更豐富一些,可是本人尚未使用過。
下載地址:https://github.com/MugunthKumar/MKNetworkKit
 

Socket

一、CocoaAsyncSocket
CocoaAsyncSocket是用的最普遍的socket開發庫,省略了程序員與CFNetwork接觸的時間,延長了程序員壽命。
下載地址:https://github.com/robbiehanson/CocoaAsyncSocket
 
二、SocketRocket
SocketRocket是Square開發的一個實現webSocket的庫,能夠輕鬆的實現即時通訊。
下載地址:https://github.com/square/SocketRocket
 

數據解析

一、SBJSON
SBJson的解析速度實際上是比較慢的,可是不知道爲何它倒是用的最廣的。
下載地址:
 
二、JSONKit
JSONKit解析速度上最接近iOS原生解析類,固然iOS5.0纔開始支持原生解析,因此選擇一個庫仍是很必要的。
下載地址:https://github.com/johnezang/JSONKit
 
三、TouchJSON
TouchJSON用的也比較普遍.
下載地址:https://github.com/TouchCode/TouchJSON
 
四、json-framework
沒有用過。
下載地址:https://github.com/stig/json-framework
 
五、TBXML
TBXML是一套輕量級的DOM方式的XML解析類庫,有很好的性能和低內存佔用,不過它不對XML格式進行校驗,不支持XPath,而且只支持解析,不支持對XML進行修改。
下載地址:https://github.com/71squared/TBXML
 
六、TouchXML
TouchXML這也是一套DOM方式的XML解析類庫,支持XPath,不支持XML的修改。
下載地址:https://github.com/TouchCode/TouchXML
 
七、KissXML
KissXML這是一套基於TouchXML的XML解析類庫,只不過實現了支持XML的修改。
下載地址:https://github.com/robbiehanson/KissXML
 
八、GDataXML
GDataXML是Google開發的DOM方式XML解析類庫,支持讀取和修改XML文檔,支持XPath方式查詢。
下載地址:
 

第三方管理

一、fmdb
fmdb是一個數據庫管理庫,封裝了sqlite相關的sql語句,簡化數據庫操做。
下載地址:https://github.com/ccgus/fmdb
 
二、ssziparchive
ssziparchive與sstoolkit是同一個做者,這哥們兒簡直是個天才。
https://github.com/soffes/ssziparchive
 
三、ZipArchive
ZipArchive一樣是minizip的封裝。
https://github.com/mattconnolly/ZipArchive
 
四、Objective-Zip
Objective-Zip將Zlib和MiniZip用Objective-C進行了封裝,使用起來很是簡單。
https://github.com/flyingdolphinstudio/Objective-Zip
 
五、zxing
zxing是一個開源Java類庫用於解析多種格式的1D/2D條形碼。目標是可以對QR編碼、DataMatrix、UPC的1D條形碼進行解碼。 其提供了多種平臺下的客戶端。
https://github.com/zxing/zxing
 
六、ZBar
ZBar 是款桌面電腦用條形碼/二維碼掃描工具,支持攝像頭及圖片掃描,支持多平臺包括 iPhone 手機。同時 ZBar提供了二維碼掃描的 API 開發包。
https://github.com/ZBar/ZBar
 
七、ObjQREncoder 
ObjQREncoder 是 Objective-C 的二維碼的編碼器,用於生成二維碼圖像。
https://github.com/jverkoey/ObjQREncoder
 
八、OpenUDID
OpenUDID是iOS禁止使用系統UDID以後的新解決方法。
https://github.com/ylechelle/OpenUDID
 
九、RegexKitLite
RegexKitLite 是一個輕量級的 Objective-C 的正則表達式庫,支持 Mac OS X 和 iOS,使用ICU 庫開發。
https://github.com/wezm/RegexKitLite
 
十、STUtils
STUtils是一系列的工具集,包含了不少對於iOS原生類的擴展,固然也包含一個用於安全保存用戶密碼STKeyChain。
https://github.com/ldandersen/STUtils
 
十一、scifihifi-iphone
scifihifi-iphone用於安全保存用戶密碼到keychain中。
https://github.com/ldandersen/scifihifi-iphone
 
十二、sskeychain
sskeychain同scifihifi-iphone同樣,不過屬於輕量級。
https://github.com/soffes/sskeychain
 
1三、SDWebImage
SDWebImage調用網站上的圖片,跟本地調用內置在應用包裏的圖片同樣簡單。操做也很簡單。
https://github.com/rs/SDWebImage
 
1四、umeng
umeng既有統計分析,也有社會化組件。可是統計分析的用戶數彷佛明顯多於其社會化組件的用戶。
http://dev.umeng.com/analytics/ios/sdk-download
 

第三方UI

一、appirater
appirater是一個能夠直接使用到任何iPhone應用中的開源類,用於提醒用戶在打開App時,對應用進行評論或打分。
下載地址:https://github.com/arashpayan/appirater
 
二、FDStatusBarNotifierView
FDStatusBarNotifierView 實現了在狀態欄中顯示自定義提醒信息的功能。
下載地址:https://github.com/frankdilo/FDStatusBarNotifierView
 
三、MTStatusBarOverlay
MTStatusBarOverlay 是一個定製的 iOS狀態欄,用於覆蓋系統默認的狀態欄。
下載地址:https://github.com/myell0w/MTStatusBarOverlay
 
四、iCarousel
iCarousel 是一個用來簡化在 iOS 上實現旋轉木馬時的視圖切換效果,支持 iPad,提供多種切換效果。
下載地址:https://github.com/nicklockwood/iCarousel
 
五、MBProgressHUD
MBProgressHUD就很少說了,偉大的菊花。
下載地址:https://github.com/jdg/MBProgressHUD
 
六、SVProgressHUD
SVProgressHUD是一個輕量級的菊花。
下載地址:https://github.com/samvermette/SVProgressHUD
 
七、MWPhotoBrowser
MWPhotoBrowser 實現了一個照片瀏覽器相似 iOS自帶的相冊應用,可顯示來自手機的圖片或者是網絡圖片,可自動從網絡下載圖片並進行緩存。可對圖片進行縮放等操做。
下載地址:https://github.com/mwaterfall/MWPhotoBrowser
 
八、ShareSDK
ShareSDK支持分享到新浪微博、微信好友、微信朋友圈、QQ好友、騰迅微博、QQ空間、人人網、開心網、豆瓣、搜狐微博、網易微博、短信、郵件、打印、拷貝等。可是因爲這個SDK包很大,因此用的時候必定要精簡一下。下載地址: http://sharesdk.cn/Download
 

第三方庫

1.CocoaPod
CocoaPod並非iOS上的第三方庫 而是大名鼎鼎的第三方庫的管理工具
在CocoaPod沒有出現以前 第三方庫的管理是很是痛苦的 尤爲是一些大型的庫(好比nimbus) 每次對庫進行更新 均可能會很是的痛苦
CocoaPod的出現解決了這些問題 以Framework的方式引入第三方庫 極大的節約了集成的時間 並且通吃Objective-C和Swift(Swift上的Cathatage我沒有實際用過 可是它的那種集成方式仍是比CocoaPod麻煩點)
2.iCarousel
在iOS 4.x的時代(我也是從4.0開始接觸iOS開發的) Coverflow的效果可謂是風靡一時 初出茅廬的我當年對如何實現幾乎是一籌莫展(當年全部的電影資訊類的APP 如布丁愛生活等 都須要實現Coverflow選片的效果 碰巧我也要作一個) iCarousel的出現替我解決了一個大的難題
今後iCarousel成爲了我每一個項目的必備良藥(也是我最喜歡的庫) 無論是Coverflow仍是輪播廣告 都能輕描淡寫的搞定 其內置的十來種顯示類型 基本能夠解決90%的UI需求 而其強大的自定義功能 則能夠解決剩餘的10% :)
不熟悉的朋友能夠嘗試一下其精美的demo(pod try iCarousel) 全部的功能都在demo中盡收眼底
做者nicklockwood也是一個高產的大神 同時維護着數量衆多且優質的開源庫(好比iVersion iRate) 你們不妨去看一看 淘一淘
3.AFNetworking/Alamofire
HTTP框架的龍頭老大 當年在與ASIHTTPRequest的競爭中笑到了最後(固然也是由於ASIHTTPRequest的做者不維護了 不過國內不少公司 由於歷史緣由都在自行維護) 因爲及時維護和擁抱語言的新特性 迅速被你們所接受和喜好
相信每一個人都用過 這裏就不贅述了
4.MKNetworkKit
若是說AFNetworking是老大 那麼MKNetworkKit能夠說是小弟了 不過也由於比AFNetworking輕量的緣由 也得到了許多開發者的青睞
當年由於ASIHTTPRequest中止維護了 在機緣巧合之下 我在AFNetworking和MKNetworkKit之間選擇了後者 並在不少項目中進行了使用
不過也許是由於AFNetworking發展得更快更迅速 而做者本人是單兵做戰的緣由 做者也基本放棄了更新(版本號在停留在0.8x) 十分惋惜
5.SDWebImage
圖片異步下載和緩存管理的集大成者 UITableView的黃金搭檔 其代碼被開發者研究分享過無數次喵大的Kingfisher(能夠說是Swift版的SDWebImage)也是深受其影響
異步下載AFNetworking和MKNetworkKit都有實現 數據緩存也有FastImageCache與TMCache等 可是將其融會貫通的 惟有SDWebImage了
除了簡單的使用sd_setImageWithURL以外 SDImageCache也是能夠獨立使用的 功能也至關之強大
6.ZXingObjC
zxing是Google出品的二維碼掃描組件 本來是Java編寫的 如今也有了各類語言的移植版 而ZXingObjC就是其中之一
zxing支持各類主流的一維碼二維碼掃描 簡單易用 小廠若是要實現二維碼掃描這個功能 基本都會選擇zxing
不過iOS7已內置了二維碼攝像頭掃描 而iOS8也已內置了二維碼靜態圖掃描 之後可能不再須要用到ZXing了 :(
7.MBProgressHUD
簡單易用且穩定的HUD組件 半透明黑底白字的風格也經久不衰 loading提示的最佳選擇
8.Masonry/SnapKit
最好用的Autolayout手寫庫(Cartography也不錯啦 可是仍是用不慣) 幫助我輕易的跨越了Autolayout這道坎
我也曾屢次在文章中提到過關於Masonry的使用方法 若是尚未用過的朋友 不妨看一看
9.pop
Facebook的工程師一直是神通常的存在 對開源社區的貢獻也是巨大的 極大的推進了各類變成語言的發展 好比HipHop之於PHP react之於JavaScript pop之於Objective-C等等
無論是HipHop react Facebook的工程師老是抱着顛覆的態度來開源 pop也不例外 這點以前我也簡單介紹過 而以pop爲基礎的paper一發布就震驚整個APP屆 在這點上pop也是厥功甚偉
pop對自定義動畫也支持得很好 我也以pop的自定義動畫爲基礎寫過MMTweanAnimation
10.ReactiveCocoa
提及來慚愧 大名鼎鼎的RAC 我只使用了點皮毛(只拿來作輸入驗證了)
暫時尚未進行深層次的使用 對RAC的理解也停留在表面階段 不過這篇文章介紹得很是詳細 值得一看
11.GPUImage
若是你要作圖像(照片或者視頻)的相關處理 或者只是簡單的想作個像Camera360同樣的拍照濾鏡 那麼你必定要研究一下GPUImage
如它的名字所述 GPUImage是基於GPU的圖像處理框架 咱們都知道 GPU是提高性能的關鍵 這也就是GPUImage如此重要 如此受歡迎的緣由
12.Lumberjack
log系統是每一個項目都應該有的東西 而Lumberjack是log系統中的翹楚
你能夠簡單的把它當成NSLog的替代品(簡單來講 Lumberjack比NSLog速度更快) 或者根據你的須要來打造一個更強大的日誌系統
13.NSLogger
從名字能夠看出 NSLogger也是一個log系統 其特色是附帶了一個功能強大的Desktop Viewer 可讓你方便的查看APP產生的日誌(支持分級篩選等等 甚至能夠直接log一張圖片)
14.AwesomeMenu
當年橫空出世的Path 其優美的設計 精彩的動畫 不知讓多少人嘴巴都合不攏 而最讚的 就是它的彈出菜單 一時成爲了每一個APP爭相模仿的對象
有了AwesomeMenu 你能夠輕易的實現它
15.MMDrawerController
普通的側滑菜單 用MMDrawerController就搞定了
16.realm
做爲數據存儲的一等公民 CoreData的地位不言而喻 不過也由於使用起來不夠方便 纔會出現MagicalRecord這種輔助類 甚至fmdb這種基於純sqlite的庫
而realm以挑戰者的身份閃亮登場 不只讀取性能更快(聽說數倍於CoraData) 接口簡單易用(以對象的形式使用數據 這點和leancloud的思路很類似) 而且還跨平臺(iOS/Android都可使用 OC/Swift/Java都支持)
若是你習慣使用Mantle之類的Modal轉換的話Realm-JSON確定能討你歡心
做爲YCombinator的孵化項目 其質量仍是能得以保證的 至少我試用下來 確實給我以很大的驚喜 無論是API的設計 仍是數據對象的定義 就連數據庫的版本升級 都很是的方便)
 

我用過的Xcode插件

1.Alcatraz
與CocoaPod相似 Alcatraz是Xcode的插件管理器 可以讓你方便的管理Xcode的插件(不只能夠管理插件 還能夠管理主題等等)
2.FuzzyAutocomplete
若是隻讓我選一個插件留下 那必須是FuzzyAutocomplete 強大的模糊匹配輸入 讓你寫代碼的時候不再用費腦子去記住名字那麼長的對象或者函數名了 好用到讓你想哭
3.Peckham
Peckham是款Xcode插件,是Xcode自動補全功能很好的補充,可方便開發者添加導入語句,好比Xcode不能自動補全pod頭部的導入,而Peckham能夠很好地解決這個問題。按下Command+Control+P鍵,鍵入幾個頭部字母,從彈出的選項列表中進行選擇。
使用指南
Command+Control+P鍵調出彈出視圖,鍵入導入語句的關鍵字,使用↑或者↓鍵進行導航選擇,按下 
 或者雙擊來添加導入。

4.VVDocumenter-Xcode
喵大的又一力做 可以識別當前函數的參數和返回類型 幫助你快速編寫符合規範的註釋(目前是以Javadoc爲標準)
5.deriveddata-exterminator
若是你總是遇到Xcode抽風 提示你要由於某個緣由要刪除某個目錄下的文件 不然編譯不過 那你必定會被這個插件感動 由於說明了遇到這個事的人不僅你一個
6.Xcode-Quick-Localization
多語言在iOS開發中一直不是很方便 有了它 你能夠省很多事
7.Backlight-for-XCode
就若是Xcode默認的80個字的分頁提示同樣 高亮當前正在編輯的一行 也是一種友好的提示 喜不喜歡也就因人而異了
經過clang-format可使用Clang把代碼格式化爲LLVM、Google、Chromium、Mozilla或者WebKit格式,再或者是你本身的配置。
附件偏大,可到原地址下載:https://github.com/travisjeffery/ClangFormat-Xcode
9.ESJsonFormat-Xcode
將json數據轉化成模型的屬性
相關文章
相關標籤/搜索