GitHub 上排名前 100 的 Objective-C 項目簡介

主要對當前 GitHub 排名前 100 的項目作一個簡單的簡介, 方便初學者快速瞭解到當前 Objective-C 在 GitHub 的狀況.react

如有任何疑問可經過微博@李錦發聯繫我ios

項目名稱
項目信息
git

1. AFNetworking
做者是 NSHipster 的博主, iOS 開發界的大神級人物, 畢業於卡內基·梅隆大學, 開源了許多牛逼的項目, 這個即是其中之一, AFNetworking 採用 NSURLConnection + NSOperation, 主要方便與服務端 API 進行數據交換, 操做簡單, 功能強大, 如今許多人都用它取代 ASIHTTPRequest程序員

2. GPUImage
一款強大的圖片濾鏡工具, 支持自定義濾鏡, 可用來實時處理圖片和視頻流, 做者是 SonoPlot 公司的 CTO, 在很小的時候便開始接觸編程, 他在 SO 上面的回答也有不少值得閱讀, GPUImage 這個項目從 2012 年開始, 使用 OpenGL 圖形程序接口編寫, 性能很是好, 如今不少 iOS 程序員都用它來實現 iOS 的模糊效果github

3. SDWebImage
做者 Olivier Poitrey 是 Dailymotion 的 CTO, 擁有多個不錯的開源項目, 此項目經常使用於對從 Web 端接受到的圖片進行緩存, 是 UIImageView 的擴展, 應用起來比較簡單web

4. RestKit
主要用於 iOS 上網絡通訊, 容許與 RESTful Web 服務交互, 經常使用於處理 API, 解析 JSON, 映射響應對象等操做, 簡單易用, 方便你把全部精力都放在對數據的操做上objective-c

5. ReactiveCocoa
由 GitHub 工程師們開發的一個應用於 iOS 和 OS X 開發的函數響應式編程新框架, Matt 稱其爲 "An open source project that exemplifies this brave new era for Objective-C", 也有人說它是 Cocoa 的將來, 具體可看唐巧寫的這篇文章數據庫

6. three20
由 Facebook iOS 客戶端衍生出的一款 iPhone 框架, 內置許多豐富的功能, 有豐富的界面, 對底層的操做便捷, 爲開發者省下了不少時間, 但如今已經中止了更新, 一個 PR 把代碼刪得乾乾淨淨, 不要好奇去點開 Files changed, 我點開後該頁面直接卡死, three20 當中的一位做者建立了 Nimbus, 算是 three20 的一個替代品編程

7. MBProgressHUD
做者 Matej Bukovinski 是一位全棧工程師, UI/UX 設計師, 此項目是一款提示框第三方庫, 幫助開發者快速應用到項目中)json

8. MagicalRecord
做者是 Coursera 的 iOS 工程師, 該項目創做靈感來自於 Ruby on Rails 的 Active Record, 主要爲方便操做 CoreData 而生, 幫助清除 CoreData 引用的代碼, 協助方便 CoreData 的工做

9. FMDB
一個對 SQLite 進行封裝的庫, 使用起來方便, 簡單

10. Mantle
做者是 GitHub 的員工, 文檔寫的很清楚: Mantle makes it easy to write a simple model layer for your Cocoa or Cocoa Touch application, 主要用來將 JSON 數據模型化爲 Model 對象, 唱吧在前段時間也改用 Mantle 了.

11. FlatUIKit
收集了不少扁平化 UI 的 iOS 組件, 方便使用

12. ASIHTTPRequest
一個輕量級的 iOS 網絡通訊類庫, 基於 CFNetwork 框架開發, 但如今已經中止更新, 多數開發者改用 AFNetworking 替代)

13. FastImageCache
Path 公司出品的 iOS 庫, 做者 Mallory Paine 是蘋果前員工, 此類庫適用於在滾動時快速顯示圖像, 高速持久是其最大的特色

14. Masonry
一個輕量級的佈局框架, 同時支持 iOS 和 Mac OS X, 語法優雅, 幫助開發者快速適配不一樣分辨率的 iOS 設備

15. Shimmer
Facebook 推出的一款具備閃爍效果的第三方控件, 供它旗下一款名爲 Paper 的應用使用, 安裝使用整個過程都十分簡單

16. SVProgressHUD
又一款輕量級的 iOS 第三方控件, 用於顯示任務加載時的動畫, 很是輕便, 容易使用

17. Slate
一款窗口管理應用程序, 但在兩年前就已經中止更新了

18. JSONKit
主要用於解析 JSON, 適用於 iOS6 如下環境, 自從 iOS5 開始 Apple 官方給出了 NSJSONSerialization API, 自此你們都用官方的了

19. Nimbus
做者 Jeff 曾爲 Facebook, Google 作過很多好東西, 也是 three20 的成員之一, three20 停更後, 他創造出這個框架來代替 three20, 文檔齊全

20. CocoaLumberjack
這是 Mac 和 iOS 的一款強大的日誌框架, 配置簡單, 多線程, 提供更高級的 log 功能, 可用於代替默認的 NSLog 語句

21. Facebook SDK for iOS
Facebook 官方的 iOS SDK, 方便開發者集成 Facebook 的一些功能到本身的 iOS APP 裏面

22. AsyncDisplayKit
Facebook 開源的一款 iOS UI 框架, Paper 用的就是該框架, 另外框架還用到了 Facebook 早期開源 Pop 動畫引擎

23. Alcatraz
Alcatraz 是一款管理 Xcode 插件、模版以及顏色配置的工具, 能夠集成到 Xcode 的圖形界面中, 安裝刪除都是幾條命令的事, 很方便, 支持本身開發插件並上傳

24. ViewDeck
一款開源的 iOS 活動面板組件, 還原 Path 2.0 的側滑效果, 做者由於時間關係在兩年前中止對其更新

25. JSQMessagesViewController
優雅的 iOS 消息類庫, 經常使用於聊天應用中, 可定製性高

26. FLEX
這是 Flipboard 官方發佈的一組專門用於 iOS 開發的應用內調試工具, 開發者無需將其鏈接到 LLDB/Xcode 或其餘遠程調試服務器,支持直接在 App 中運行

27. Xctool
是 Facebook 開源的一個命令行工具,用來替代蘋果的 XcodeBuild 工具, 極大的方便了 iOS 的構建和測試, 輸出錯誤信息也比較友好, 受到許多 iOS 開發者的稱讚, 常常與其搭配使用的還有 OCUnit, Travis CI, OCLint 等測試工具

28. OpenEmu
超強的遊戲模擬器, 作遊戲開發必備, 官網作得也很不錯

29. iCarousel
做者是英國 Charcoal Design 公司的創始人, 開源領域的貢獻頗爲卓著, 這個項目就是其中之一, 這是一款能夠在 iOS 上實現旋轉木馬視圖切換效果的第三方控件, 並提供多種切換效果

30. RESideMenu
做者 Roman Efimov 是雅虎的 iOS 工程師, 這個項目實現了 iOS 上的菜單側滑效果, 創意來源於 Dribbble, 該項目支持 iOS8

321 PNChart
做者周楷雯是 90 後, 秒視的創始人, 該項目是一個帶動畫效果的圖表控件, 簡約易用, 受到很多開發者喜好

31.2PonyDebugger
由 Square 公司推出的一款優秀的 iOS 應用網絡調試工具, 用戶能夠實時看到應用程序的網絡請求, 也能夠對 iOS 應用程序的核心數據棧進行遠程調試

33. JVFloatLabeledTextField
做者是 Thumb Labs 的聯合創始人, JVFloatLabeledTextField 是 UITextField 的子類, 主要實現輸入框標籤浮動效果, 創做靈感來自 Dribbble, 已出現多個移植版本

34. SWTableViewCell
UITableViewCell 的子類, 實現了左右滑動顯示信息視圖並調出按鈕

35. AwesomeMenu
做者是一位中國人, 該項目主要是使用 CoreAnimation 還原了 Path menu 的動畫效果

36. Reachability
Reachablity 是用於檢測 iOS 設備網絡環境的庫

37. VVDocumenter-Xcode
做者是王巍國內著名的 iOS 開發者, 人稱喵神, 目前在日本 LINE 公司工做, 該項目幫助開發者輕鬆的生成註釋文檔, 節省了很多工做量, 贊

38. The Physical Web
由 Chrome 團隊主導的一個項目, 意在用 URL 鏈接世界, 方便用戶接受數據, 目前尚處在實驗階段

39. NewsBlur
做者獨自一我的 Samuel Clay 作出來的一款名爲 NewsBlur 的新聞閱讀器, 不少人都稱其爲 Google Reader 的替代品, 這是它的源碼

40. Cocos2D-SpriteBuilder
一個可用於在 iOS, Mac 和 Android 上製做 2D 遊戲或其它圖形/交互應用的框架, 以前的項目名稱爲 Cocos Swift, 目前該項目在 GitHub 上更新較爲頻繁

41. TTTAttributedLabel
UILabel 的替代品, 使 iOS 上的 Label 功能更加豐富, 可支持連接植入等功能

42. CocoaAsyncSocket
一個功能強大、簡單易用的異步 socket 通信類庫, 支持 TCP 和 UDP 協議, 可用於 Mac 和 iOS 設備上, 做者 Robbie Hanson 是 Deusty 的首席軟件工程師

43. TapkuLibrary
做者是 Devin Ross, 這是在 iOS 上一款功能強大的 UI 效果類庫, 能夠實現多種酷炫的效果, 目前仍在更新中

44. Canvas
無需編碼實現牛逼的動畫效果的庫, 連設計師均可以快速上手

45. SocketRocket
Square 公司開源的一個 WebSocket 客戶端, 穩定而且易用, 作實時應用常會用到, 受廣大開發者喜好

46. ECSlidingViewController
一個視圖控制器容器, 將子視圖處理成兩層, 經過滑動來處理層的切換, 創做靈感來自 Facebook 和 Path的 App, 做者是 Cleveland 的員工

47. Json Framework
用於解析 JSON 數據的一個框架, 可是在 iOS5 以上版本大多數人都選擇使用 NSJSONSerialization 來解析 JSON, 該項目如今在 GitHub 上也幾乎沒怎麼更新了

48. Tweaks
Facebook 開源的一款工具, 旨在幫助 iOS 開發者更快的迭代應用, 方便用戶動態的調整參數, 是的, Paper 這個項目也用到了

49. realm-cocoa
Realm-Cocoa 是 Realm 公司推出一款移動端數據庫, 能夠運行在手機、平板和可穿戴設備之上, 其目標是取代 CoreData 和 SQLite 數據庫

50. BlocksKit
一個開源的與 Cocoa 緊密集合的基礎性框架

51. Appirater
一款用於提醒用戶給你的 App 打分的工具

52. KIF
Square 出品的一個開源的用戶界面測試框架, 極大的簡化了 iOS 開發者的 UI 測試流程

53. SlackTextViewController
Slack 推出的一款具備文字輸入框高度自適應, 自動輸入, 複製單元格內容等功能的解決方案

54. JazzHands
IFTTT 開源的一個簡單易用的關鍵幀基礎動畫框架, 可經過手勢、scroll views, KVO, ReactiveCocoa 等方式來控制動畫

55. Bolts-iOS
Bolts 是一個 Parse 和 Facebook 在內部使用的底層庫, 方便移動開發

56. Spectacle
一款易用的 OS X 窗口分屏操做快捷鍵工具, 這是其源代碼

57. nui
方便樣式化 iOS 應用中的 UI 元素, 可在短期內樣式化整個應用, 類 CSS 原理

58. Induction
Induction 是一款用於理解數據關係的管理工具, 這是其程序代碼

59. JSONModel
一個能迅速解析服務器返回的 Json 數據的庫, 方便數據的類型轉換

60. DTCoreText
一個開源的 iOS 富文本組件, 它能夠解析 HTML 與 CSS 並最終用 CoreText 繪製出來, 一般用於在一些須要顯示富文本的場景下代替低性能的 UIWebView

61. Popping
基於 Facebook Pop 引擎的 iOS 動畫庫, 集合了不少動畫效果

62. TSMessages
一個用來彈出顯示警告和通知的輕量級庫, 樣式豐富, 簡單易用

63. KVOController
一個簡單安全的 KVO(Key-value Observing, 鍵-值 觀察)工具, 提供簡單方便、線程安全的API, Facebook 的開源項目之一

64. MWPhotoBrowser
一款簡單的 iOS 照片瀏覽控件

65. MMDrawerController
一個輕量級, 易於使用的側邊抽屜導航 iOS 控件

66. QuickDialog
用於快速建立複雜的 iOS 表單, 自定義了 UITableViewCell, TableView 的樣式

67. SVPullToRefresh
一款只需一行代碼即可集成上拉刷新和下拉加載的組件

68. cheddar-ios
Cheddar 是一款簡單易用的日程管理軟件, 這是其早期版本的開源代碼, 該項目已中止維護

69. XVim
一款在 Xcode 上實現了 Vim 功能的插件

70. EGOTableViewPullRefresh
一款提供下拉刷新的控件, 最後更新時間是一年前

71. iOS-boilerplate
iOS 應用程序的基礎模板, 使用該模板能夠省掉許多項目初始編碼的工做, 內置很是多豐富的功能, 現已經中止維護

72. JASidePanels
一個 UIViewController 容器, 靈感來自 Facebook 和 Path 2.0 應用的菜單, 實現了左右側滑的操做

73. FormatterKit
收集了不少構思優秀的 NSFormatter 子類

74. MSDynamicsDrawerViewController
實現了具備動態彈性效果的抽屜式側邊導航欄, 效果豐富, 可定製性強

75. idev-recipes
iDevRecipes 博客的代碼, 演示如何實現一些有趣的控件, 該項目在兩年前(2013)中止了更新

76. XMPPFramework
一個基於 RFC-3920 實現, 支持多線程和線程保護, 同時通用於全部的 iOS 和 Mac OS 開發設備的通訊框架.

77. MacGap1
一款能夠將 HTML/CSS/JS 網絡應用打包成原生 Mac App 的工具

78. FXBlurView
iOS 模糊背景類庫, 能夠方便的根據底層顯示的狀態生成模糊效果

79. iOS7-Sampler
整合演示了多個具備 iOS7 新特性的的項目, 提供了很是多的例子參考

80. PromiseKit
提供強大的 iOS 開發異步功能, 是 Promises 的實現, 受到廣大開發者的追捧

81. Origami
此爲 Facebook 推出的 Quartz Composer 的一個開源插件, 由其設計團隊花費了 9 個月打造而成, 目的是爲方便設計師快速構建原型, 以零代碼完成複雜動畫的合成和測試, 堪稱神器

82. NSLogger
一款強大的日誌分析工具, 具備大窗口查看 Log, 自定義日誌等級等功能

83. KSImageNamed-Xcode
一款對 UIImage 的 imageNamed 提供自動補全功能的插件, 很是方便

84. PureLayout
一個簡單卻強大的 AutoLayout API 庫, 兼容了 Objective-C 和 Swift, 擴展了 UIView/NSView, NSArray, 和 NSLayoutConstraint

85. AppleDoc
一款 Objective-C 文檔生成工具, 生成的文檔風格保持與 Apple 官方的一致, 極大的方便了 Xcode 識別本身寫的 API 文檔, 安裝也是十分的簡單

86. iTerm2
iTerm2 被很多程序員稱讚爲 Mac 下最好用的終端, 這是其源代碼, 配合 oh-my-zsh 使用效果更佳

87. Kiwi
一個行爲驅動開發測試框架, 適用於 iOS 平臺, 旨在爲開發者提供一個簡單配置即可使用的 BDD 庫

88. terminal-notifier
一款命令行工具, 用來給 Mac OS X 用戶發送通知

89. MacDown
Mac OS X 下的一款開源的 Markdown 編輯器, 創意來自與 Mou, 使用 brew cask 便可完成安裝

90. TwUI
Twitter 開源的一個支持硬件加速的 Mac 的 UI 框架, 最後一次的更新時間是在 3 年前(2012)

91. PaperFold for iOS
實現了相似摺紙效果的視圖切換, 可從不一樣方向進行切換, 該項目已經許久未更新

92. Reader
一款開源的 iOS PDF 閱讀器, 附帶書籤, 列綱要等功能

93. WebViewJavascriptBridge
一個方便使用 Objective-C 與 JavaScript 進行通訊的第三方庫, 支持消息發送, 接收, 消息處理器的註冊與調用以及設置消息處理的回調

94. iOS8-Sampler
iOSX-Sampler 系列之一, 整合演示了多個具備 iOS8 新特性的的項目, 提供了很是多的例子參考

95. CocoaHTTPServer
一個用於 Mac OS X 或 iOS 應用的輕量級、可嵌入的HTTP 服務器框架, 方便開發者在應用中嵌入一個 HTTP 服務器

96. Kod
Mac OS X 上一款專爲程序員打造的編輯器, 這是其開源代碼, 惋惜的是做者在 2011 年中止了維護

97. TPKeyboardAvoiding
下拉鍵盤在 iOS 移動文本字段的通用解決方案, 可以自動處理鍵盤彈出後出現遮擋到文本輸入框的問題

98. MKNetworkKit
一個輕量級網絡請求框架, 徹底基於 ARC, 僅有兩個類, 具備自主操做多個網絡請求, 更加準確的顯示網絡活動指標等優勢

99. PKRevealController
一個 iOS 平臺上的視圖控制器集合, 經過展示多個視圖控制器來進行控制器之間的切換. 設置簡單, 高度靈活

100. AQGridView
一個命令行工具, 經過項目裏的 .xcdatamodel 文件, 能夠爲每一個 entity 生成兩個類, 方便 CoreData 的使用

Refer:
https://github.com/Aufree/trip-to-iOS/blob/master/Top-100.md
http://www.oschina.net/news/61416/github-top-100-objective-c-projects

相關文章
相關標籤/搜索