前不久,猿妹才发现支付宝使用了三十多款开源软件,今天打开饿了么发现,饿了么也使用了33款开源软件。
上次和大家分享的是Android版支付宝使用的开源项目,今天就和你们分享下iOS版饿了么使用的开源项目:
1Password是一款适用于iPhone/iPod touch和iPad/iPad mini的通用应用,旨在帮助用户在自己的应用中使用第三方密码管理器。支持Swift 4及iOS 8以上的版本(项目地址:https://github.com/fahlout/PasswordExtension)
2、AFNetworking
AFNetworking是一个适用于iOS以及Mac OS X的网络库,它基于Foundation URL加载系统,扩展了Cocoa内置的强大的高级网络抽象。拥有良好的架构,丰富的api,以及模块化构建方式,使得使用起来非常轻松。(项目地址:https://github.com/AFNetworking/AFNetworking)
3、Blockskit
BlocksKit 是一个开源的与Cocoa紧密集合的基础性框架,BlocksKit并没有创建新的宏,函数,方法和类,只是对Cocoa类的一个扩展,是一个 blocks的大集合。BlocksKit给一些类带来了更好的block支持。(项目地址:https://github.com/BlocksKit/BlocksKit)
4、BoringSSL
BoringSSL 是谷歌创建的 OpenSSL 分支,但使用BoringSSL的代码不能保证API或ABI的稳定性,而创建BoringSSL则是因为谷歌使用了超过70个OpenSSL补丁,部分被接受合并到了OpenSSL主库,但大部分没有。随着Android、Chrome和其它项目开始需要这些补丁的子集,事情日益变得复杂,要保证所有补丁在不同代码库正常工作需要太多精力。所以他们决定创建OpenSSL分支。(项目地址:https://github.com/google/boringssl)
5、CocoaLumberjack
CocoaLumberjack 是一个快速、简单,但很强大的日志框架,用于 Mac OS X 和 iOS 系统。(项目地址:https://github.com/CocoaLumberjack/CocoaLumberjack)
6、fishhook
fishhook 是一个非常简单的库,它允许支持在 iOS 上的模拟器和设备运行Mach-O,并提供动态绑定服务。此功能类似在OS X 系统上使用的 DYLD_INTERPOSE 功能。你可以通过使用 fishhook 实现呼叫/跟踪功能(如:auditing for double-close issues with file descriptors)。(项目地址:https://github.com/facebook/fishhook)
7、FMDB
FMDB是一款简洁、易用的封装库,是SQLite的C API。以OC的方式封装了SQLite的C语言API,使用起来更加的方便。(项目地址:https://github.com/ccgus/fmdb)
8、Geohash
geohash是一种地址编码,它能把二维的经纬度编码成一维的字符串。lbs可以说是一个基础应用,geohash对于解决附近地点搜索提供了一个有效的解决方案。(项目地址:https://github.com/CloudSide/geohash)
9、gRPC
gRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持(项目地址:https://github.com/grpc/grpc)
10、gRPC-Core
C 语言 gRPC 实现(项目地址:https://github.com/tony612/grpc-core)
11、gRPC-ProtoRPC
gRPC中的一个类,前期的 gRPC 开发对 ObjC 并不了解,甚至于他们自己的 gRPC-ProtoRPC 库中类都是没有任何前缀,如 ProtoRPC,直到后期才开始添加 GRPC 作为前缀:GRPCProtoCall
12、gRPC-RxLibrary
gRPC的Reactive 拓展
13、IGListKit
IGListKit 是 Instagram 程序员做的一个数据驱动的 UICollectionView 框架,为了构建快速和可扩展的列表。另外,它有助于你在 app 结束对于大量视图控制器的使用。(项目地址:https://github.com/Instagram/IGListKit)
14、KVOController
Key-value 的监控是一个 MVC 应用中非常有用的技术。KVOController (来自 facebook)构建了一个基于 Cocoa 的 time-tested key-value 监控实现,提供简单方便、线程安全的 API。(项目地址:https://github.com/facebook/KVOController)
15、libextobjc
libextobjc 是用于扩展 Objective-C 编程语言的模块化的 Cocoa 库。libextobjc是非常模块化的 - 大部分的类和模块可以使用不超过一个或两个依赖项。(项目地址:https://github.com/jspahrsummers/libextobjc)
16、Lottie
Lottie 是 Airbnb 开发的一款能够为原生应用添加动画效果的开源工具。Lottie 目前提供了 iOS, Android, 和 React Native 版本,能够实时渲染 After Effects 动画特效。(项目地址:https://github.com/airbnb/lottie-ios)
17、Mantle
Mantle 是 Cocoa 和 Cocoa Touch 的模型框架,你可以通过它为你的 Cocoa 和 Cocoa Touch 写简单的模型层。 (项目地址:https://github.com/Mantle/Mantle)
18、masonry
Masonry是一 个用来布局的jQuery插件,配置Masonry相当容易,只需要在jQuery脚本中的wrapping container元素中加上.masonry()方法。(项目地址:https://github.com/desandro/masonry)
19、MBProgressHUD
苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore。而 MBProgressHUD提供了一个替代方案,而且在用户角度上,实现的效果根本看不出和官方程序有什么差别。(项目地址:https://github.com/jdg/MBProgressHUD)
20、MD5Digest
这是一个非常简单的NSString类别,可以从给定的MD5摘要中创建NSString。(项目地址:https://github.com/keith/MD5Digest)
21、nanopb
google protocbuf第三方库nanopb的吗,它特别适用于微控制器。(项目地址:https://github.com/nanopb/nanopb)
22、OAStackView
iOS 9 引入了非常酷的 UIStackView ,而 OAStackView 可将这个 UIStackView 移植到 iOS7+版本(项目地址:https://github.com/nsomar/OAStackView)
23、Protobuf
Google Protocol Buffer(简称 Protobuf)是一种轻便高效的结构化数据存储格式,平台无关、语言无关、可扩展,可用于通讯协议和数据存储等领域(项目地址:https://github.com/google/protobuf)
24、Regex Categories
Regex Categories 是一款为 NSRegularExpression和 NSString采集 objective-c类别的工具,使他们可用性更高更简洁。 (项目地址:https://github.com/bendytree/Objective-C-RegEx-Categories)
25、SAMKeychain
简单的Objective-C封装,SAMkeychain可以用来储存用户的隐私信息。(项目地址:https://github.com/soffes/SAMKeychain)
26、SDWebImage
这个库提供了一个支持缓存的异步图像下载器。用SDWebImage调用网站上的图片,跟本地调用内置在应用包里的图片一样简单。操作也很简单。(项目地址:https://github.com/rs/SDWebImage)
27、SSZipArchive
SSZipArchive是很完善的压缩及解压缩工具,基于miniZip的修改及封装,API更加简洁实用。(项目地址:https://github.com/wuhaiwei/SSZipArchive)
28、SZTextView
SZTextView 用于替代内置的 UITextView,实现了 placeholder 功能。(项目地址:https://github.com/glaszig/SZTextView)
29、TacoSDK
TACO 是用于 Apache Cordova 的工具,来自微软。TACO 提供了一组命令行工具,可以使混合应用程序(hybrid app)开发更加简单、友好、快速。(项目地址:https://github.com/tensor-compiler/taco)
30、TTTAttributedLabel
TTTAttributedLabel 是 UILable 的改进,支持 NSAttributedStrings(项目地址:https://github.com/TTTAttributedLabel/TTTAttributedLabel)
31、UICollectionViewLeftAlignedLayout
UICollectionViewLeftAlignedLayout 实现左对齐的视图布局效果。(项目地址:https://github.com/mokagio/UICollectionViewLeftAlignedLayout)
32、UITableView+FDTemplateLayoutCell
UITableView+FDTemplateLayoutCell 是一个由国人团队开发的优化计算 UITableViewCell高度的轻量级框架(项目地址:https://github.com/forkingdog/UITableView-FDTemplateLayoutCell)
33、weexSDK
Weex 致力于使开发者能基于当代先进的 Web 开发技术,在集成了 WeexSDK 之后,你可以使用 JavaScript 和现代流行的前端框架来开发移动应用。(项目地址:https://github.com/alibaba/weex)
-
开源软件
+关注
关注
0文章
209浏览量
15886 -
iOS
+关注
关注
8文章
3393浏览量
150430
原文标题:一个饿了么竟使用了30多个开源软件
文章出处:【微信号:TheAlgorithm,微信公众号:算法与数据结构】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论