iOS版饿了么使用的开源项目,fishhook 2024-03-25 16:09:27 0 0 描述 前不久,猿妹才发现支付宝使用了三十多款开源软件,今天打开饿了么发现,饿了么也使用了33款开源软件。 上次和大家分享的是Android版支付宝使用的开源项目,今天就和你们分享下iOS版饿了么使用的开源项目: 1、1passwordextension 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)