网络通讯
一、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数据转化成模型的属性