再看知名应用背后的第三方开源项目

来源:互联网 发布:知春路人流医院地址 编辑:程序博客网 时间:2024/04/28 11:38

http://www.cocoachina.com/ios/20141017/9955.html

知名应用程序的设计和技术一直都是开发者需要学习的,同样这些应用所使用的开源框架也是不可忽视的一部分。此前《iOS第三方开源库的吐槽和备忘》中作者ibireme列举了国内多款知名应用所使用的开源框架,并对其中一些框架进行了分析,同样国外开发者@iOSCowboy也在博客中给我们列出了国外多款知名应用使用的开源框架。另外txx's blog中详细介绍了Facebook Paper使用的第三方库。 
 
Instagram
AFNetworking适用于iOS和OS X的网络框架。
Appirater: 提醒用户打分。
ASIHTTPRequest:简单使用CFNetwork API封装进行HTTP网络请求,用Objective-C编写,可应用在Mac OSX和iOS开发中。
CocoaHTTPServer: 用于Mac OS X和iOS应用程序的轻量级、可嵌入的HTTP服务器框架。
Cocoa Lumberjack:适用于Mac和iOS的日志框架,集简单、快速、强大以及灵活于一身。
MBProgressHUD: 用多种样式展示半透明的HUD,并带有指示器和标签,自定义功能强大。
PLCrashReporter (Github mirror): 进程内崩溃报告框架。
QSUtilities: 实用工具、控件以及其他辅助类的集合。
SocketRocket: Objective-C WebSocket客户端库。 https://github.com/square/SocketRocket
XBImageFilters:允许实时过滤摄像头拍摄的照片,使用OpenGL ES 2 来快速处理各种图片效果。
 
Foursquare 
Facebook SDK for iOS: 集成Facebook,构建强大的社交app。
FSNetworking: Foursquare iOS网络库。
kingpin: MapKit/MKAnnotation pin 聚合库,主要用来在地图上面添加锚点。
AFNetworking:适用于iOS和OS X的网络框架。
SKBounceAnimation: CAKeyframeAnimation子类,可快速简单地设置弹动的数量,开始和结束的值,以及创建动画。 
DB5: 通过Plist配置文件。
 
LinkedIn
BlocksKit: blocks工具包。
SDWebImage: 提供一个UIImageVIew类以支持远程加载网络图片。具有缓存管理、异步图片下载等功能,支持GIF动画,使用GCD和ARC。
DTCOreText:文字效果代码类库。在UITextView上实现丰富的文字效果,比如文字大小、颜色、字体、下划线,链接,给文字加上图片、视频,文字任意间距等等。实现类似于CSS网页的文字效果。
 
Shazam
AudioStreamer:Mac OS X和iPhone上适用的流媒体音频播放器,可播放来自网络上的音乐。.
ColorArt: iTunes 11风格的颜色匹配代码。
objc-geohash: Objective-C GeoHash库,通过经纬度获得哈希表。
FormatterKit: 收集了精心构思的NSFormatter子类。
UIView+Glow: UIView的一个类别,可添加对制作发光视图的支持,以突出屏幕上重要的部分,方便用户与之进行交互。
WEbViewJavascriptBridge: 在使用UIWebView时,它优雅地实现了JS与ios 的ObjC 原生代码之间的互调,支持消息发送、接收、消息处理器的注册与调用以及设置消息处理的回调。
 
Skype
AFNetworking: 适用于iOS和OS X的网络框架。
Hockey SDK: HockeyApp service官方iOS SDK。
PLCrashReporter (Github mirror): 进程内的崩溃报告框架。
TTTAttributedLabel是一个文字视图开源组件,是UILabel的替代元件,可以以简单的方式展现渲染的属性字符串。另外,还支持链接植入,不管是手动还是使用UIDataDetectorTypes自动把电话号码、事件、地址以及其他信息变成链接。
SDWebImage: 提供一个UIImageVIew类以支持远程加载网络图片。具有缓存管理、异步图片下载等功能,支持GIF动画,使用GCD和ARC。
Cocoa Lumberjack: 适用于Mac和iOS的日志框架,集简单、快速、强大以及灵活于一身。
MWPhotoBrowser: 一个简单的带有栅格视图的iOS照片浏览器,可添加标题和选择多个图片。照片浏览器效果类似iOS原生的照片应用,可显示来自手机的图片或者是网络图片,也可自动从网络下载图片并进行缓存,还可图片进行缩放等。
BlocksKit: Objective-C blocks工具包。
 
Spotify
FMDB: SQLite API封装库。
MAObjCRuntime:将运行时API封装成ObjC。
Nu: 编程语言。
PLCrashReporter (Github mirror):进程内崩溃报告框架。
SBJSON:Objective-C 实现的一个严格的JSON 解析器和生成器。


http://blog.rpplusplus.me/blog/2014/02/11/facebook-paper-used-3rd/

Facebook Paper使用的第三方库

第三方库名简介链接ACEcode editorhttps://github.com/ajaxorg/aceAppirater用户评分组件https://github.com/arashpayan/appiraterReachability网络连通测试https://github.com/tonymillion/ReachabilityAQGridViewiPhone/iPad网格视图https://github.com/AlanQuatermain/AQGridViewbitvectyasm组件一部分https://github.com/yasm/yasm/blob/master/libyasm/bitvect.cBoostC++黑科技库http://www.boost.org/Breadcrumb基于UIControl的分级控件https://github.com/meiwin/BTBreadcrumbViewbreakpadgoogle的崩溃收集系统code.google.com/p/google-breakpad/Chromium这个还用说么http://www.chromium.org/CocoaHTTPServer将iOS/Mac当做简易服务器https://github.com/robbiehanson/CocoaHTTPServerCocoaLumberjack非常著名的一个loggerhttps://github.com/CocoaLumberjack/CocoaLumberjackDCRoundSwitch可定制的Switchhttps://github.com/domesticcatsoftware/DCRoundSwitchDTCoreText在coretext里面用HTMLhttps://github.com/Cocoanetics/DTCoreTextEGODatabase线程安全的 SQLite封装https://github.com/enormego/egodatabaseexpatC语言的XML解析器http://expat.sourceforge.net/FFT by Mark Oleson快速傅里叶变换https://github.com/dkogan/PDL/tree/master/Lib/FFTFFT by Takuya OouraWWDC2010 accelerate guide提到的最快的FFThttp://www.fftw.orggh-kitUtilities and categories for Objective-CUtilities and categories for Objective-Cgh-unitTest Framework for Objective-Chttps://github.com/gh-unit/gh-unitGoogle Toolbox for MacGoogle Mac/iOS 代码集合https://code.google.com/p/google-toolbox-for-macgoogle-web-toolkitGWThttp://www.gwtproject.org/gtestgoogle c++ testhttps://code.google.com/p/googletest/gypGYP can Generate Your Projectshttps://code.google.com/p/gyp/IEEE 754r Half Precision floating浮点格式http://en.wikipedia.org/wiki/Half-precision_floating-point_formatHPGrowingTextView与iOS SMS 类似的发送框https://github.com/HansPinckaers/GrowingTextViewInAppSettingsKitsetting in apphttp://www.inappsettingskit.com/ios5-cookbook https://github.com/erica/iOS-5-Cookbookiso-8601-parser-unparserCocoa class to convert dates to and from ISO-8601-formatted stringshttps://github.com/nixme/iso-8601-parser-unparserjqueryjs这个不用说了吧http://jquery.com/JSONKit号称效率最高的JSON解析器https://github.com/johnezang/JSONKitleveldbkey-value型数据库https://code.google.com/p/leveldb/LibComponentLogging-Corelogging libraryhttps://github.com/aharren/LibComponentLogging-CoreLibComponentLogging-NSLog同上https://github.com/aharren/LibComponentLogging-NSLoggerlibjingleGoogle Talk Voice and P2P Interoperability Libraryhttps://code.google.com/p/libjingle/libjpeg-turbojpeg加速编码解码库http://libjpeg-turbo.virtualgl.org/libjpegjpeg库http://libjpeg.sourceforge.net/libPhoneNumber-iOS标准化电话号码库https://github.com/me2day/libPhoneNumber-iOSlibphonenumbergoogle的电话号码处理库https://code.google.com/p/libphonenumber/libsrtp开源的SRTP(Secure Real-time Transport Protocol)http://srtp.sourceforge.net/srtp.htmllibvpx开源的VP8编解码器http://www.webmproject.org/code/libyuv实现各种YUV,RGB色彩之间的转换、旋转、缩放https://code.google.com/p/libyuv/llvm这个还用说么..http://llvm.org/MAZeroingWeakRef智能指针https://github.com/mikeash/MAZeroingWeakRefminizip如其名https://github.com/nmoinvaz/minizipmixpanel-iPhonetracking library for Mixpanel Analyticshttps://github.com/mixpanel/mixpanel-iphone/mosquitto一个实现了MQTT3.1协议的代理服务器http://mosquitto.org/MessagePack一个类似于JSON的东西http://msgpack.org/MessagePack Objective C implementMessagePack OC 实现https://github.com/msgpack/msgpack-objectivecmsinttypes用vs编译c99项目所缺失的头文件https://code.google.com/p/msinttypes/OpenCV Tutorials如其名http://docs.opencv.org/doc/tutorials/tutorials.htmlnimbus著名的frameworkhttp://nimbuskit.info/NJKWebViewProgress没有用私有API的WebView进度条https://github.com/ninjinkun/NJKWebViewProgressunmodified objc4??? ObjQREncoder二维码生成https://github.com/jverkoey/ObjQREncoderOCHamcrest测试https://github.com/hamcrest/OCHamcrestOCMockmock不用多说吧?http://ocmock.org/OCPDFGeniOS HTML to PDFhttps://github.com/ocrickard/OCPDFGenOmniGroup OmniUIOmniGroup的一个组件https://github.com/omnigroup/OmniGroupOpenSSL不用说了吧https://www.openssl.org/OpenUDID这也不用说了吧https://github.com/ylechelle/OpenUDIDopus传输互动的视频和音频的开源免专利费音频编解码器www.opus-codec.org/‎peertalkiOS and OS X Cocoa library for communicating over USB and TCPhttps://github.com/rsms/peertalkPhotoScroller苹果在wwdc的scrollview demohttps://github.com/robertwalker/PhotoScrollerPHP… PLCrashReporter崩溃收集https://www.plcrashreporter.org/pmtk3机器学习工具包,高大上!https://pmtk3.googlecode.com/Pocket-ObjC-SDKPocket的SDKhttps://github.com/Pocket/Pocket-ObjC-SDKportaudio跨平台的开源音频I/O库http://www.portaudio.com/protobufGoogle 数据交换格式 类似于JSONhttps://code.google.com/p/protobuf/PSTCollectionViewUICollectionView的低版本替代品https://github.com/steipete/PSTCollectionViewQSUtilities又是一个代码库https://github.com/mikeho/QSUtilities/RestKit更好的支持 RESTful web servicehttps://github.com/RestKit/RestKitRing Buffer Utility不明真相http://docs.nscl.msu.edu/daq/11.0/x123.htmlSDURLCache让URLCache支持本地缓存https://github.com/rs/SDURLCacheSDWebImage异步图片加载、缓存https://github.com/rs/SDWebImageSOCKitString <–> Object Coding for Objective-Chttps://github.com/jverkoey/sockitSPDY-for-iPhoneiOS SPDY协议https://github.com/sorced-jim/SPDY-for-iPhonespdylayc语言的spdy实验性扩展https://github.com/tatsuhiro-t/spdylayspreadsort一个相对于快排更好的排序算法http://en.wikipedia.org/wiki/Spreadsortssziparchivezip/unzip封装https://github.com/soffes/ssziparchiveTDOauth如其名https://github.com/tweetdeck/TDOAuthtiqrqq微信的二维码扫描登录https://tiqr.org/UAModalPanel类似新浪微博的那个oauth的弹框https://github.com/UrbanApps/UAModalPanelwebkit这个不用说了吧 webp一种Google的图片格式https://developers.google.com/speed/webp/?hl=zh-CNwebrtcReal-Time Communications (RTC) capabilities via simple JavaScript APIhttp://www.webrtc.org/WebViewJavascriptBridgeJS OC互调https://github.com/marcuswestin/WebViewJavascriptBridgeXMLReader如其名https://github.com/amarcadet/XMLReaderyaml-cpp如其名 YAML的CPP解析器https://code.google.com/p/yaml-cpp/yasm一个完全重写的NASM汇编http://yasm.tortall.net/zlib大伙儿都知道的压缩解压库www.zlib.net/‎zxing二维码识别库https://github.com/zxing/zxing
http://github.ibireme.com/github/list/ios/

0 0