GitHub 上排名前 100 的 Objective-C 项目简介
转自 Amin706 GitHub 上排名前 100 的 Objective-C 项目简介
1.AFNetworking作者是 NSHipster 的博主, iOS 开发界的大神级人物, 毕业于卡内基·梅隆大学, 开源了许多牛逼的项目, 这个便是其中之一, AFNetworking 采用 NSURLConnection + NSOperation, 主要方便与服务端 API 进行数据交换, 操作简单, 功能强大, 现在许多人都用它取代 ASIHTTPRequest
2.GPUImage一款强大的图片滤镜工具, 支持自定义滤镜, 可用来实时处理图片和视频流, 作者是 SonoPlot 公司的 CTO, 在很小的时候便开始接触编程, 他在SO上面的回答也有很多值得阅读, GPUImage 这个项目从 2012 年开始, 使用 OpenGL 图形程序接口编写, 性能非常好, 现在很多 iOS 程序员都用它来实现 iOS 的模糊效果
3.SDWebImage作者 Olivier Poitrey 是 Dailymotion 的 CTO, 拥有多个不错的开源项目, 此项目常用于对从 Web 端接受到的图片进行缓存, 是 UIImageView 的扩展, 应用起来比较简单
4.RestKit主要用于 iOS 上网络通信, 允许与 RESTful Web 服务交互, 常用于处理 API, 解析 JSON, 映射响应对象等操作, 简单易用, 方便你把所有精力都放在对数据的操作上
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 设计师, 此项目是一款提示框第三方库, 帮助开发者快速应用到项目中)
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.FastImageCachePath 公司出品的 iOS 库, 作者 Mallory Paine 是苹果前员工, 此类库适用于在滚动时快速显示图像, 高速持久是其最大的特点
14.Masonry一个轻量级的布局框架, 同时支持 iOS 和 Mac OS X, 语法优雅, 帮助开发者快速适配不同分辨率的 iOS 设备
15.ShimmerFacebook 推出的一款具有闪烁效果的第三方控件, 供它旗下一款名为 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 iOSFacebook 官方的 iOS SDK, 方便开发者集成 Facebook 的一些功能到自己的 iOS APP 里面
22.AsyncDisplayKitFacebook 开源的一款 iOS UI 框架, Paper 用的就是该框架, 另外框架还用到了 Facebook 早期开源 Pop 动画引擎
23.AlcatrazAlcatraz 是一款管理 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
321PNChart作者周楷雯是 90 后, 秒视的创始人, 该项目是一个带动画效果的图表控件, 简约易用, 受到不少开发者喜爱
31.2PonyDebugger由 Square 公司推出的一款优秀的 iOS 应用网络调试工具, 用户可以实时看到应用程序的网络请求, 也可以对 iOS 应用程序的核心数据栈进行远程调试
33.JVFloatLabeledTextField作者是 Thumb Labs 的联合创始人, JVFloatLabeledTextField 是 UITextField 的子类, 主要实现输入框标签浮动效果, 创作灵感来自 Dribbble, 已出现多个移植版本
34.SWTableViewCellUITableViewCell 的子类, 实现了左右滑动显示信息视图并调出按钮
35.AwesomeMenu作者是一位中国人, 该项目主要是使用 CoreAnimation 还原了 Path menu 的动画效果
36.ReachabilityReachablity 是用于检测 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.TTTAttributedLabelUILabel 的替代品, 使 iOS 上的 Label 功能更加丰富, 可支持链接植入等功能
42.CocoaAsyncSocket一个功能强大、简单易用的异步 socket 通讯类库, 支持 TCP 和 UDP 协议, 可用于 Mac 和 iOS 设备上, 作者 Robbie Hanson 是 Deusty 的首席软件工程师
43.TapkuLibrary作者是 Devin Ross, 这是在 iOS 上一款功能强大的 UI 效果类库, 可以实现多种酷炫的效果, 目前仍在更新中
44.Canvas无需编码实现牛逼的动画效果的库, 连设计师都可以快速上手
45.SocketRocketSquare 公司开源的一个 WebSocket 客户端, 稳定并且易用, 做实时应用常会用到, 受广大开发者喜爱
46.ECSlidingViewController一个视图控制器容器, 将子视图处理成两层, 通过滑动来处理层的切换, 创作灵感来自 Facebook 和 Path的 App, 作者是 Cleveland 的员工
47.Json Framework用于解析 JSON 数据的一个框架, 但是在 iOS5 以上版本大多数人都选择使用 NSJSONSerialization 来解析 JSON, 该项目现在在 GitHub 上也几乎没怎么更新了
48.TweaksFacebook 开源的一款工具, 旨在帮助 iOS 开发者更快的迭代应用, 方便用户动态的调整参数, 是的, Paper 这个项目也用到了
49.realm-cocoaRealm-Cocoa 是 Realm 公司推出一款移动端数据库, 可以运行在手机、平板和可穿戴设备之上, 其目标是取代 CoreData 和 SQLite 数据库
50.BlocksKit一个开源的与 Cocoa 紧密集合的基础性框架
51.Appirater一款用于提醒用户给你的 App 打分的工具
52.KIFSquare 出品的一个开源的用户界面测试框架, 极大的简化了 iOS 开发者的 UI 测试流程
53.SlackTextViewControllerSlack 推出的一款具有文字输入框高度自适应, 自动输入, 复制单元格内容等功能的解决方案
54.JazzHandsIFTTT 开源的一个简单易用的关键帧基础动画框架, 可通过手势、scroll views, KVO, ReactiveCocoa 等方式来控制动画
55.Bolts-iOSBolts 是一个 Parse 和 Facebook 在内部使用的底层库, 方便移动开发
56.Spectacle一款易用的 OS X 窗口分屏操作快捷键工具, 这是其源代码
57.nui方便样式化 iOS 应用中的 UI 元素, 可在短时间内样式化整个应用, 类 CSS 原理
58.InductionInduction 是一款用于理解数据关系的管理工具, 这是其程序代码
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-iosCheddar 是一款简单易用的日程管理软件, 这是其早期版本的开源代码, 该项目已停止维护
69.XVim一款在 Xcode 上实现了 Vim 功能的插件
70.EGOTableViewPullRefresh一款提供下拉刷新的控件, 最后更新时间是一年前
71.iOS-boilerplateiOS 应用程序的基础模板, 使用该模板可以省掉许多项目初始编码的工作, 内置非常多丰富的功能, 现已经停止维护
72.JASidePanels一个 UIViewController 容器, 灵感来自 Facebook 和 Path 2.0 应用的菜单, 实现了左右侧滑的操作
73.FormatterKit收集了很多构思优秀的 NSFormatter 子类
74.MSDynamicsDrawerViewController实现了具有动态弹性效果的抽屉式侧边导航栏, 效果丰富, 可定制性强
75.idev-recipesiDevRecipes 博客的代码, 演示如何实现一些有趣的控件, 该项目在两年前(2013)停止了更新
76.XMPPFramework一个基于 RFC-3920 实现, 支持多线程和线程保护, 同时通用于所有的 iOS 和 Mac OS 开发设备的通信框架.
77.MacGap1一款可以将 HTML/CSS/JS 网络应用打包成原生 Mac App 的工具
78.FXBlurViewiOS 模糊背景类库, 可以方便的根据底层显示的状态生成模糊效果
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.iTerm2iTerm2 被不少程序员称赞为 Mac 下最好用的终端, 这是其源代码, 配合 oh-my-zsh 使用效果更佳
87.Kiwi一个行为驱动开发测试框架, 适用于 iOS 平台, 旨在为开发者提供一个简单配置便可使用的 BDD 库
88.terminal-notifier一款命令行工具, 用来给 Mac OS X 用户发送通知
89.MacDownMac OS X 下的一款开源的 Markdown 编辑器, 创意来自与 Mou, 使用 brew cask 即可完成安装
90.TwUITwitter 开源的一个支持硬件加速的 Mac 的 UI 框架, 最后一次的更新时间是在 3 年前(2012)
91.PaperFold for iOS实现了类似折纸效果的视图切换, 可从不同方向进行切换, 该项目已经许久未更新
92.Reader一款开源的 iOS PDF 阅读器, 附带书签, 列纲要等功能
93.WebViewJavascriptBridge一个方便使用 Objective-C 与 JavaScript 进行通信的第三方库, 支持消息发送, 接收, 消息处理器的注册与调用以及设置消息处理的回调
94.iOS8-SampleriOSX-Sampler 系列之一, 整合演示了多个具有 iOS8 新特性的的项目, 提供了非常多的例子参考
95.CocoaHTTPServer一个用于 Mac OS X 或 iOS 应用的轻量级、可嵌入的HTTP 服务器框架, 方便开发者在应用中嵌入一个 HTTP 服务器
96.KodMac OS X 上一款专为程序员打造的编辑器, 这是其开源代码, 可惜的是作者在 2011 年停止了维护
97.TPKeyboardAvoiding下拉键盘在 iOS 移动文本字段的通用解决方案, 能够自动处理键盘弹出后出现遮挡到文本输入框的问题
98.MKNetworkKit一个轻量级网络请求框架, 完全基于 ARC, 仅有两个类, 具有自主操作多个网络请求, 更加准确的显示网络活动指标等优点
99.PKRevealController一个 iOS 平台上的视图控制器集合, 通过展现多个视图控制器来进行控制器之间的切换. 设置简单, 高度灵活
100.AQGridView一个命令行工具, 通过项目里的.xcdatamodel文件, 可以为每个 entity 生成两个类, 方便 CoreData 的使用
文/Amin706(作者)
原文链接:http://www.jianshu.com/p/8e531ef2cf5e
著作权归作者所有,转载请联系作者获得授权,并标注“作者”。
转自iOS开发三方库#Objective-C中最受瞩目库
[链接](https://github.com/languages/Objective-C/most_watched)
* [three20](https://github.com/facebook/three20)
* faebook的320库**
* [AFNetworking](https://github.com/AFNetworking/AFNetworking)
*网络库**
* [MBProgressHUD](https://github.com/jdg/MBProgressHUD)
HUD ** **
* [JSONKit](https://github.com/johnezang/JSONKit)
*不支持ARC的高效的JSON库**
* [tapkulibrary](https://github.com/devinross/tapkulibrary)
**的CoverFlow,日历等样式**
* [SDWebImage](https://github.com/rs/SDWebImage)
*异步图片获取**
* [AwesomeMenu](https://github.com/levey/AwesomeMenu)
*路径的菜单效果**
* [ViewDeck](https://github.com/Inferis/ViewDeck)
*左右划出菜单控件**
* [切达-IOS](https://github.com/nothingmagical/cheddar-ios)
*切达客户端代码**
* [QuickDialog](https://github.com/escoz/QuickDialog)
**各种类型的表单**
* [SVProgressHUD](https://github.com/samvermette/SVProgressHUD)
*另一个牛叉的单例HUD **
* [EGOTableViewPullRefresh](https://github.com/enormego/EGOTableViewPullRefresh)
*下拉刷新**
* [iCarousel](https://github.com/nicklockwood/iCarousel)
**的CoverFlow **
* [AQGridView](https://github.com/AlanQuatermain/AQGridView)
* NSCollectionView的iOS6的,替代品**
* [appirater](https://github.com/arashpayan/appirater)
*提示用户给应用评分的工具**
* [PullToRefresh](https://github.com/leah/PullToRefresh)
*下拉刷新**
* [PaperFold作的iOS](https://github.com/honcheng/PaperFold-for-iOS)
*滑动折叠效果**
* [DTCoreText](https://github.com/Cocoanetics/DTCoreText)
*使用HTML格式来使用CoreText **
* [GMGridView](https://github.com/gmoledina/GMGridView)
** NSCollectionView **
* [JASidePanels](https://github.com/gotosleep/JASidePanels)
*左右划出菜单控件**
* [MKNetworkKit](https://github.com/MugunthKumar/MKNetworkKit)
*网络模块**
* [InAppSettingsKit](https://github.com/futuretap/InAppSettingsKit)
*在应用程序设置**
* [PSStackedView](https://github.com/steipete/PSStackedView)
*左右划出菜单控件**
* [CocoaLumberjack](https://github.com/robbiehanson/CocoaLumberjack)
*伐木工人日志框架**
* [MTStatusBarOverlay](https://github.com/myell0w/MTStatusBarOverlay)
*应用内自定义状态栏显示**
* [读者](https://github.com/vfr/Reader)
* PDF阅读器内核**
* [TTTAttributedLabel](https://github.com/mattt/TTTAttributedLabel)
*富文本标签**
* [PSTCollectionView](https://github.com/steipete/PSTCollectionView)
** UICollectionView **
* [MGSplitViewController](https://github.com/mattgemmell/MGSplitViewController)
** MGSplitViewController是一个替代UISplitViewController **
* [ECSlidingViewController](https://github.com/edgecase/ECSlidingViewController)
*向右滑出菜单**
* [SVPullToRefresh](https://github.com/samvermette/SVPullToRefresh)
*下拉刷新**
* [UIDevice-with-UniqueIdentifier-for-iOS-5](https://github.com/gekitz/UIDevice-with-UniqueIdentifier-for-iOS-5)
** MAC2UDID **
* [MWFeedParser](https://github.com/mwaterfall/MWFeedParser)
*一个Objective-C RSS / Atom源分析器为iOS **
* [CMPopTipView](https://github.com/chrismiles/CMPopTipView)
** CMPopTipView **
* [卡尔](https://github.com/klazuka/Kal)
*日历框架**
* [FlatUIKit](https://github.com/Grouper/FlatUIKit)
**一套自定义的UIKit中**
* [FormatterKit](https://github.com/mattt/FormatterKit)
*一些特殊的格式化数据**
* [BlockAlertsAnd-ActionSheets](https://github.com/gpambrozio/BlockAlertsAnd-ActionSheets)
**座而非委托实现的UIAlertView和UIActionSheet **
* [PKRevealController](https://github.com/pkluz/PKRevealController)
*又一个滑出菜单的玩意**
* [TSMessages](https://github.com/toursprung/TSMessages)
*信息提示**
* [MGBox2](https://github.com/sobri909/MGBox2)
*简单,快速的iOS表格,网格,多**
* [MWPhotoBrowser](https://github.com/mwaterfall/MWPhotoBrowser)
*图片浏览器**
* [JTGestureBasedTableViewDemo](https://github.com/mystcolor/JTGestureBasedTableViewDemo)
*清除的效果**
* [OHAttributedLabel](https://github.com/AliSoftware/OHAttributedLabel)
*富文本标签**
* [愤怒](https://github.com/nicklockwood/iRate)
*提示用户给应用评分的工具**
* [AudioStreamer](https://github.com/mattgallagher/AudioStreamer)
*音频流播放器**
* [MCSwipeTableViewCell](https://github.com/alikaragoz/MCSwipeTableViewCell)
*为了展示如何能实现一个TableViewCell就像一个我们可以在很好地执行邮箱的iOS应用程序看到的。**
* [SMPageControl](https://github.com/Spaceman-Labs/SMPageControl)
*自定义的UIPageControl **
* [OpenUDID](https://github.com/ylechelle/OpenUDID)
** OpenUDID **
* [ObjC中,TimesSquare](https://github.com/square/objc-TimesSquare)
*日历视图**
* [OpenFlow的](https://github.com/thefaj/OpenFlow)
**的CoverFlow **
* [XMPPFramework](https://github.com/robbiehanson/XMPPFramework)
** XMPPFramework **
* [KNSemiModalViewController](https://github.com/kentnguyen/KNSemiModalViewController)
*国家地理应用程序的ModalView效果**
* [HGPageScrollView](https://github.com/100grams/HGPageScrollView)
* Safari浏览器切换网页效果**
* [MGTileMenu](https://github.com/mattgemmell/MGTileMenu)
** MGTileMenu **
* [SVSegmentedControl](https://github.com/samvermette/SVSegmentedControl)
** SVSegmentedControl **
* [GrowingTextView](https://github.com/HansPinckaers/GrowingTextView)
*短信输入菜单**
* [iOSPlot](https://github.com/honcheng/iOSPlot)
**聊**
* [newsyc](https://github.com/Xuzz/newsyc)
*一个iPhone黑客新闻客户端。**
* [ODRefreshControl](https://github.com/Sephiroth87/ODRefreshControl)
*模仿iOS6的的下拉刷新控件效果**
* [TPKeyboardAvoiding](https://github.com/michaeltyson/TPKeyboardAvoiding)
*自动处理的TextField和键盘位置**
* [WebViewJavascriptBridge](https://github.com/marcuswestin/WebViewJavascriptBridge)
*在iOS / OSX的桥梁,为在UIWebViews / WebViews的OBJ-C与JavaScript之间发送消息**
* [YRDropdownView](https://github.com/onemightyroar/YRDropdownView)
*信息提示**
* [SVWebViewController](https://github.com/samvermette/SVWebViewController)
** SVWebViewController **
* [EGOImageLoading](https://github.com/enormego/EGOImageLoading)
*异步图片加载**
* [NoticeView](https://github.com/tciuro/NoticeView)
*信息提示**
* [PSCollectionView](https://github.com/ptshih/PSCollectionView)
** PSCollectionView **
* [SDSegmentedControl](https://github.com/rs/SDSegmentedControl)
** SDSegmentedControl **
* [DCRoundSwitch](https://github.com/domesticcatsoftware/DCRoundSwitch)
*自定义的UISwitch **
* [PHFComposeBarView](https://github.com/fphilipe/PHFComposeBarView)
*短信输入框**
* [EGOPhotoViewer](https://github.com/enormego/PhotoViewer)
** EGOPhotoViewer **