当前位置: 首页 > 科技观察

iOS开发者最喜欢的Top10库总结分享

时间:2023-03-19 19:33:58 科技观察

iOS开发者最喜欢的Top10库由“iOSTutoringTeam”成员MarceloFabri投票选出。参与者包括开发者团队、iOS辅导团队和行业嘉宾。每个团队必须按照以下规则选出五个最好的库:1)不能投票给自己写的库;2)排除大型架构,比如游戏架构;3)排除不在设备上运行的库,例如CocoaPods或Rack::CoreData也被排除在外。最后,评选出了以下10个iOS开发者最喜欢的库:1)SSToolkitSamSoffes简直就是一个Objective-C天才,SSToolkit就是一个例子。作者将自己在App中实现的各种UI效果做了一个代码库,方便其他人使用。SSToolkit的一些基本类包括SSCollectionView、SSGradientView从UI组件到方便的基础类都经过精心设计和记录,以帮助开发人员解决一些常见问题,例如跟踪设备是否具有视网膜显示或是否可以裁剪图像2)GPUImageGPUImage是一个非常强大且易于使用的图像处理库。提供多种图像处理滤镜,支持相机、摄像机实时滤镜。基于GPU图像加速,图像处理速度超快,可自定义图像滤镜。支持ARC,但它仍然缺少一些CoreImage功能。的一些高级功能,例如人脸检测。滤镜效果图3)SocketRocketSocketRocket是一个WebSocket客户端(WebSocket是适用于Web应用的下一代全双工通信协议,称为“TCPfortheWeb”,实现浏览器和服务器的双向通信),使用用Objective-C编写。超级坚固易用,简直就是实时应用的完美搭档。SocketRocket遵循最新的WebSocket规范RFC6455,只有Chrome等一些较新的浏览器才支持这个库,支持TLS(wss)。iOS4.x系统使用NSStream/CFNetworking(免费享用),使用ARC,采用并行架构。该工作由后端工作完成,基于委托编程。没有UI包依赖性。因为Square,才有了SocketRocket4)HockeyKitHockeyKit是一个iOSAd-Hoc自动更新框架。所有苹果商店的应用程序都可以使用它,它可以显着改善整个beta测试过程,它分为服务器和客户端框架两部分。服务器端组件可以在没有客户端库的情况下独立工作。只需要在服务器上安装一次服务器,就可以处理多个具有不同bundleidentifiers的应用程序(一些开发者强烈建议对Debug、AdHocBeta和AppStorerelease版本使用不同的bundleidentifiers)默认情况下,当App启动或唤醒时up,客户端会从服务器端检查更新,用户可以在设置对话框中修改这个设置:每天一次或者手动检查更新。HockeyKit用户提供服务器托管服务Beta测试演示5)JSONKitJSONKit是ObjectiveC平台上常用的JSON数据访问工具。JSONKit可以在运行时自动连接libz.dylib,无需手动连接。在解析过程中,如果检测到gzip文件,JSONKit可以自动解压,速度超快,并且支持之前的iOS版本(但要注意的是,从iOS5开始,iOS已经有了本地JSON解析工具)JSONKit的性能远远优于JSON-Framework(即SBJSON)。JSONKit使用起来也非常简单,在AppleiOS5.0中它的性能比NSJSONSerialization还要好,速度比NSJSONSerialization快25%到40%已经是非常大的差距了。Benchmark测试结果图6)MagicalRecord在使用CoreData时会用到大量的参考代码,这使得工作变得非常复杂和令人沮丧。MagicalRecord的出现就是解决了这些问题。它不仅可以清理CoreData代码,还可以在必要时修改NSFetchRequest。需要iOS5.0及以上,MacOS10.7及以上。使用ARC。可以使用iCloud同步CoreData存储。7)RestKitRestkit是一个开源的Objective-C框架。在iOS和MacOSX上与Objective-C中的RESTfulweb服务简单交互包含简单的HTTP请求/响应API,具有强大的对象映射系统以减少代码长度RestKit可以减少JSON/XML处理资源消耗,支持通过SBJSON和YAJL进行JSON解析当您的应用程序需要与REST远程API集成时,RestKit会派上用场,帮助您减少工作量(教程指导)。添加Restkit8)TestFlight想要轻松发送和测试应用程序?还是用TestFlight吧,不用通过iTunes,有人梳理出它的三大杀手锏:轻松收集测试用户的UDID、iOS版本、硬件版本,发送给开发者。用户收到开发者的TestFlight邀请后,只需拿起iPhone打开邀请中的链接,注册账号,注册硬件即可。有了测试包,就不用一个一个发邮件了,直接把IPA上传到TestFlight官网,然后勾选合适的测试用户,点击确定,大功告成,用户会马上收到来自TestFlight的更新通知TestFlight,然后只要在他的iPhone上登录TestFlight网站,TestFlight就会自动安装测试IPA到他的iPhone上,不用担心用户在iPhone上安装失败。Testfligh可以给你实时反馈***统计数据。现在有一个桌面应用程序,使用起来更快、更方便。9)MBProgressHUD苹果的应用一般都使用半透明的进度显示效果,但是这个API是不公开的,所以如果你使用它,你可能会被踢出AppStore。而MBProgressHUD提供了替代方案,实现的效果和官方方案没有什么区别。同时,它还提供了其他附加功能,例如虚拟进度指示器和完成提示。还可以安装其他的东西,比如需要显示的文字,动画,x和y的设置等等,有很多iOS讲师在用。一般用于应用内购买MBProgressHUD适用于任何iOS版本,需要LLVM3.0及以上编译架构,兼容ARC和非ARC项目,它依赖于Apple的以下架构:Foundation。架构UIKit。架构核心图形。架构透明进度效果10)AFNetworkingAFNetworking是一个轻量级的iOS网络服务库。它建立在NSURLConnection、NSOperation等类库的基础上,使得很多网络通信功能的实现变得非常简单。支持HTTP请求和基于REST的Web服务(包括GET、POST、PUT、DELETE等)支持ARC需要iOS5.0及以上有一些插件可以扩展现有功能,有一个功能齐全的API可以从中获取JSON网址特别简单,简单到什么程度呢?看下面几行代码NSURL*url=[NSURRLURLWithString:@"https://alpha-api.app.net/stream/0/posts/stream/global"];NSURLRequest*request=[NSURLRequestRequestWithURL:url];AFJSONRequestOperation*operation=[AFJSONRequestOperationJSONRequestOperationWithRequest:requestsuccess:^(NSURLRequest*request,NSHTTPURLResponse*response,idJSON){NSLog(@"App.netGlobalStream:%@",JSON);}failure:nil];[operationstart];这10个其中,AFNetworking是最新的赢家,它现在是GitHub上第三大Objetive-C库。iPhone和iPad上很多著名的应用程序都使用这个类库,它是很多人的最爱。在这里我把有用的库整理出来介绍给大家,希望能真正帮助到开发者,让大家的生活更轻松。