十大你需要知道和喜欢的iOS高效类库

本文是转载,原文地址是:http://www.zyprosoft.com/archives/156

还有CSDN的翻译很好:http://www.csdn.net/article/2012-11-07/2811587-pop-ios-dev-library

另外http://www.raywenderlich.com/21987/top-10-most-useful-ios-libraries-to-know-and-love这个网址是有英文版本。

非常喜欢raywenderlich,以前raywenderlich的文章还没有中文的翻译,当然现在部分也没有中文翻译,昨天又翻看了一下午的文章,每次看完都能学到不少。中文的非常容易理解,但是还有部分的英文的很好的文章,没有翻译。从来没有翻译过这种技术性的文章,一直想翻译一篇,正好昨天看到这篇文章,感觉非常好,对于提高我们编程有很好的帮助,能提高我们的效率,而且,这些高效类库都是有在iOS系统上设计牛人点评的,包括诸多的Raywenderlich的读者投票选出来的结果,感觉虽然是2012年的评选结果,但是到现在,我觉得依然很多人在用,包括最近一直在阅读的 WordPress-iOS源代码,里面也采用了这些高效类库,它们都统一在一块了,叫  CocoaPods。最后文章一直翻译到底会有提到这个工程,也是这篇文章的作者整理的。下面不继续废话,开始翻译吧,翻译的不好的地方请见谅,我会尽力做好的。

 

原文作者:   马塞洛·法布里    2012年10月29日   原文地址链接:

Top 10 Most Useful iOS Libraries to Know and Love

 

这篇文章的作者是iOS教程组的马塞洛·法布里 ,他是一名在Movile工作的iOS开发工程师。你可以查阅他的个人网站或者在Twitter和Google+上面找到他。

前阵子,大家一起投票选出自己最喜欢的iOS类库。终于到了揭晓优胜者的时候了!

为了让这变的更有趣,第一名的”Reader’s Choice”类库获奖者将收到一块来自我们制作的奖牌,以此感谢他们写出如此受欢迎的类库。

除了你们选择的“Reader’s Choice“获奖者,我们iOS教程组的内部也做了一个评选。我们也邀请了一些明星开发者来助阵发表他们的看法。

这有更加多的乐趣通过所有我们自己的选择。

请继续阅读来找出这套机制的原理,并且找到谁赢得了最佳类库奖项。

评选规则

我们有三个投票组:所有的读者,iOS教程组,特邀嘉宾。每一个小组都按照下面的规则选出他们认为最好的五个iOS类库:

1.不可以选择他自己开发的类库。

2.大型框架不算在内,比如Cocos2D这样的。

3.不运行在设备上的类库排除在外,如CocoaPods或者Rack::CoreData。

4.为了公平起见,我们优先选择那些提供了iOS系统没有的功能的类库。这个是很重要的,因为很多类库都是很久以前写的了,那个时候这些类库提供的功能iOS系统都还没有,比如JSON解析。

每一个嘉宾明星的提名算一个积分(每个嘉宾可以提名五个类库)。我们读者和教程组的计分则按照类库的排位来计算,排在第一名的获得五分,第二名的4分,以此类推计算前五名的计分。

明星嘉宾由下面这些开发者组成(按照名字首字母排序)

1.比尔-达德尼(Bill Dudney):  前苹果应用程序框架传播者,《iOS SDK Development》和《Core Animation for Mac OS X and the iPhone》的作者。

2.埃文-多尔(Evan Doll):  Flipboard联合创始人,前苹果iPhone软件工程师,2009年在斯坦福教授CS193P(iPhone应用程序开发课程),这些课程可以在itunes上找到。

3.Jeff Verkoeyen: Facebook iPad版本开发组领导者,也是著名框架Nimbus的作者。

4.Mattt Thompson:   著名类库 NSHipsterAFNetworking的作者。

5.Peter Steinberger:  著名类库 PSPDFKitPSStackedView的作者,并且最近开发的一个PSTCollectionView,这个类库可以让你在iOS4或者iOS5上使用和UICollectionView一样的效果。

6.Sam Soffes:   著名类库 Cheddar ,SSToolkitSSKeychain的作者。

每一个嘉宾已经获得了他们各自的徽章,谢谢Ray的妻子Vicki!这些徽章将会用来标示嘉宾将自己的投票给了哪个类库。

Bill’s badge

Evan’s badge

Jeff’s badge

Mattt’s badge

Peter’s badge

Sam’s badge

Reader’s Choice Position

iOS Tutorial Team Position

Overall Position

现在开始揭晓我们的获奖者!

荣誉提名奖

不是所有被我们嘉宾提名的类库都会进入Top10,但是他们值得提名,不是吗?下面是被提名的类库(按照首字母排序)

1.
CocoaLumberjack

“可以高度配置的日志记录框架” – Evan Doll
它比NSLog更高效而且更容易使用。

CorePlot

Core Plot为数据提供了一个2D可视化的图形表示,创造了很多图形,比如饼状图,柱状图,等等很多。我们甚至可以在这个网站可以看到很棒的教程。


DCIntrospect

 

“一个你可以加入到你的应用中的非常有用的调试工具集合” – Evan Doll


FMDB

“一个提供精心制作的API接口的SQLite轻型类库。” – Evan Doll
有时你不能使用CoreData,必须直接使用SQLite。使用FMDB,这些将会变得非常容易。

ISO8601DateFormatter

Peter Hosey的不可缺少的数据格式化工具是我使用类库列表中的重要部分。顺便说下,我希望苹果能过提供(*cough* Base64 encoding *cough*),至少现在我还能用ISO8601DateFormatter来完成工作。– Mattt Thompson


Nimbus

“不仅仅是因为Nimbus非常有用,更多的是它作为一个负责任的开发典范(一个说明文档和功能同时增加的类库)是一种态度,我希望更多的工程可以跟随。为 Jeff Verkoeyen和为所有努力作出贡献的人高呼和呐喊吧!” – Mattt Thompson

ReactiveCocoa

“因为这个主意不只是伟大,它是一个解决通用问题的全新的方法。甚至你不在使用功能,它依然有个非常好的类库来解决KVO并且可以自动注销。” – Peter Steinberger

SDURLCache(这个下面的第一句就不知道翻译,不过总体意思就是用于做更好的URLCaching)

“Peter Steinbergers fork of SDURLCache is as useful as it is an impressive example of some fascinating optimization strategies. Although recent updates to NSURLCache obviate some of the need of SDURLCache, it’s still a great choice as a less mysterious, more featured implementation of URL caching.” – Mattt Thompson

友情提示,从iOS5开始,NSURLCache 已经支持磁盘缓存。然后,SDURLCache非常有用,如果你想更好的控制缓存。

TTTAttributedLabel

“当你在iOS6上想显示多态文本的时候,TTTAttributedLabel真的非常棒!” – Sam Soffes

 

获胜者

SSToolkit

“Sam Soffes 是一股进入Objective-C软件领域的强劲力量,SSToolKit 证明了这点。 is a force of nature when it comes to Objective-C software, and SSToolkit exemplifies that.它是一个名副其实的功能集合,包括了UI组件和便利的基础类库扩展方法。它的设计非常好,还有完善的文档,充满智慧。” – Mattt Thompson

Mattt的描述很好的描述了SSToolkit是什么。除了UI组件,它还提供了一堆类别方法让我们变得更好,帮助我们解决那些相同的问题,比如检测一个设备是否拥有Retina屏幕或者裁剪一张图片。

GPUImage(GPUImage完成了一些图像处理的,有帮忙翻译一下的没)

GPUImage is a great framework to deal with image, live camera and video processing, using the GPU instead of the CPU, which makes it a lot faster. It is also faster than Apple’s Core Image, and supports custom filters and iOS 4, which Core Image doesn’t. However, it currently lacks of some advanced features that Core Image has, such as face detection. It’s very well documented, with sample applications. Give it a chance!

SocketRocket

“如果你正在iOS上使用Web Sockets,看起来好像没有比SocketRocket更好的了。超级稳定和容易使用,它能非常完美的适应任何实时应用程序。” – Mattt Thompson

Web Sockets 支持通过单一的Tcp链接完成双向通信。只有一些现代的浏览器支持它,但是它在实时应用程序中真的非常强大。Pooling seem so wrong now, doesn’t it?(不懂这句的意思)。

HockeyKit(这个貌似需要去HockeyApp官方网站注册Key才能使用)

“我们使用HockeyApp做版本分布和app内部崩溃记录。高度推荐!” – Evan Doll
“目前市场上最好的iOS崩溃报告工具。它甚至在一个异常触发时会有堆栈追踪。连苹果都没有这样的功能。” – Peter Steinberger

 

HockeyKit 减少了测试版本的痛苦,并且有一个令人惊讶的崩溃报告能力。试试它!

JSONKit

“超快的JSON解析,与旧得iOS版本兼容。” – Evan Doll
“一个超级强大得Objective-C开发者实现得JSON” – Jeff Verkoeyen

这里有个非常重要得提示你需要知道,JSON解析已经在iOS5系统中提供了,但是JSONKit有时候仍然非常有用。

MagicalRecord

Playing with Core Data is kind of lame. A lot of boilerplate code, extra complexity… frustrating. MagicalRecord was created to solve that problems, keeping the option further customize the requests if needed. It was inspired by Rails’ Active Record, which is based on the Active Record Pattern, named by Martin Fowler.(CoreData 用得,接触得比较少,就不翻译了,有兴趣得可以翻译下,在下面留个言,我会用来替换的。)

RestKit

RESTKit是一个易于使用的流行框架,使您不必编写很多无聊的代码通常情况下你要当处理web服务api,比如解析JSON或映射响应对象等。

TestFlight

TestFlight是一个可以轻松的将你的测试版本分发给你的测试工程师的服务。不需要iTunes,不需要下载.ipa文件,再也不需要写长长的介绍邮件了。测试者会收到一个带有链接的邮件,它就起作用了。除了提供分发,它也可以让你获得崩溃报告,获得测试者从应用内带来的反馈,甚至检查点(看看这个功能是不是真的被使用)。它现在有个桌面版应用,可以让你快速的上传版本。它也有一些接口,你可以自动配送你的流程,创建一个连续的环境。(we cover that on iOS 6 By Tutorials book!).

MBProgressHUD(这个使用最多的就不翻译了)

Sometimes, our apps are required to do long tasks, such as I/O (mainly networking, or even files) or hard processing. However, the user must have a visual feedback, so he won’t think the app has crashed. MBProgressHUD provides it, by creating a HUD (a transparent display that shows info to the user), usually with an UIActivityIndicator on it (but it’s customizable!). You can also configure some other things, like the text that is shown, the animation, x and y offsets, and a lot more! We have some tutorials that use it: Introduction to In-App PurchasesIntroduction to MapKit on iOS Tutorial and How to Write an iOS App That Uses a Web Service.

 

最优秀的获胜者!!!!!

AND THE GREAT WINNER IS:

AFNetworking!

 

“轻量级并且超级快速,AFNetworking让别的网络组件手忙脚乱(google翻译!!!嘿嘿)” – Jeff Verkoeyen

“它在网络方面是一个全新的开始,拥有非常棒的接口并且被广泛使用。我见过很多网络方面的类库…但是这个是最难的。让你站在巨人的肩膀上变得更好吧!” – Peter Steinberger

“我真得非常喜欢AFNetworking。它真得在网络方面是全新和完美得。” – Sam Soffes

AFNetworking 是所有我们得嘉宾告诉我们得。它是一个全新得开始:它一开始就是使用block写得,以及GCD和NSOperation。它现在也使用ARC并且要求iOS5.0以上才能使用了。

它设计得非常好,它得核心只包含真正重要得东西(也有一些插件可用,可以扩展功能)。它被广泛使用,并且它已经被社区很好得接受了。(它现在是在GitHub上关注度排在第三得Objective-C类库。另外,它还在不断得发展,并且有很丰富得文档和例子可以供下载和学习。

成为读者最多得选择(Reader’s Choice)(因为它是我们排名中最推荐得类库),它得作者Mattt Thompson(同时也是我们的嘉宾)和Scott Raymond  将会收到一块华丽得奖牌!!

让我们看看它们有多么的漂亮。伙计,你们值得拥有它!感谢创建了这么令人惊叹的类库(并且开源了它)!

给AFNetworking作者的奖牌!

文章还有很多,到这里就把主要的内容算翻译完了,就不继续翻译了,本人英语不好,只能通过Google翻译和自己仅有的英语知识来尝试翻译。第一次翻译,翻译的不好请多见谅,下次会尝试翻译一些技术文章。不过光是翻译是不行的,既然都到这里了,为了节省大家的时间,我把上面提到的类库都搜集起来,放在下面,让大家可以直接在这里下载。

 

CocoaLumberjack-master

CorePlot_1.4

DCIntrospect-master

fmdb-master

GPUImage-master

HockeyAppKit-iOS-latest

ISO-8601-date-formatter-0.7

JSONKit-master

MBProgressHUD-master

SDURLCache-master

SocketRocket-master

TTTAttributedLabel-master

nimbus-master

MagicalRecord-develop

sstoolkit-master

AFNetworking-1.x (XC0de 5以下可以用,iOS5.0以上可以用)

AFNetworking-master-2.0(XCode5以上才可以用,支持iOS7)

ReactiveCocoa-master

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值