22个iOS开发经常使用开源项目

分享近期 GitHub 上比较流行的 22 个和 iOS 开发相关的开源项目。ios

包括开发辅助工具,异步编程库,JSON 解析,移动端数据库,图像视频处理,网络请求,UI 框架、组件,算法、数据结构等内容。git

  1. Accio 使用 Swift 编写的 iOS/tvOS/watchOS/macOS 依赖管理工具。

在当前 iOS 生态环境中,CocoaPods 和 Carthage 是最成熟的依赖管理器。github

若是你不喜欢使用 Ruby 编写的 CocoaPods,或者更偏心 Carthage 的非侵入方式,能够尝试下 Accio. Accio 改进了 Carthage 的一些问题,同时它的核心尽量使用 SwiftPM,这样将来 Xcode 对 SwiftPM 支持更成熟时,能够很方便地迁移到 SwiftPM。顺便提一下,Accio 读做 AH-kee-oh.面试

  1. SwiftLint 检查 Swift 代码风格、惯例。基于 Clang 和 SourceKit 提供的 AST 表示,所以能够提供更精准的分析结果。算法

  2. idb 顾名思义,iOS 版本的 adb。这款 Facebook 开发的命令行工具可助你自动化在模拟器和真机上的调试流程。数据库

  3. InAppViewDebugger 供内嵌于应用的视图调试器。相似 Xcode 视图调试器,但能够在 iPad 和 iPhone 上调试视图。编程

  4. MTHawkeye 美图秀秀开源的 iOS 调试优化辅助工具集。内置插件有 LivingObjectSniffer (跟踪对象)、Allocations(跟踪实时分配内存)、UITimeProfiler(主线程耗时任务调优)、ANRTrace(捕获卡顿事件)、FPSTrace(跟踪界面 FPS 及 OpenGL 刷新绘制 FPS)、CPUTrace(跟踪 CPU 持续高使用率)、NetworkMonitor(监听记录应用内 HTTP(S) 网络请求各阶段耗时)、NetworkInspect(基于 Network Monitor 推荐可优化项,支持自定义规则)、OpengGLTrace(跟踪 OpenGL 资源内存占用)、DirectoryWatcher(跟踪沙盒文件夹大小)、FLEX(沙盒文件 AirDrop)。开发者可基于基础框架 API 开发本身的调试辅助插件。swift

  5. RxSwift 在 Swift 中使用 Reactive 编程范式。缓存

  6. PromiseKit 给 Swift 和 Objective-C 带来了 Promise 异步编程模式。网络

  7. IkigaJSON 用 Swift 编写的高性能 JSON 解析库。

  8. Realm 移动端数据库,Core Data & SQLite 替代品。提供直观的对象接口,无需 ORM。在提供众多丰富特性的状况下,经常使用操做仍有超越原生 SQLite 的性能。支持 iOS、macOS、tvOS、watchOS。同时提供 Objective-C 和 Swift 版本。

做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个个人iOS交
流群:519832104 无论你是小白还
是大牛欢迎入驻,分享经验,讨论技术,你们一块儿交流学习成长!
另附上一份各好友收集的大厂面试题,须要iOS开发学习资料、面试真题,能够添加
iOS开发进阶交流群,进群可自行下载!

  1. BBMetalImage 使用 Swift 编写的高性能图像视频处理库,基于 GPU 加速。内置超过 60 种过滤器,支持链式调用,支持自定义过滤器。

  2. Alamofire 使用 Swift 编写的 HTTP 网络库,支持 iOS、macOS、tvOS、watchOS。特性包括链式调用,URL、JSON、plist 参数编码,上传文件、数据,下载文件(支持续传),URLCredential 认证,HTTP 响应校验,上传、下载进度,curl 命令输出,动态适配、重试请求等。

  3. SDWebImage 高性能异步图像下载,特性包括缓存(自动处理缓存过时)、后台图像解压缩、定制图像转换、定制图像加载器等。在 UIImage 支持的格式(JPEG、PNG、GIF 等)以外,还支持 WebP 格式(包括 WebP 动画)。并可经过插件支持更多图像格式,例如 APNG、BPG、HFIF、SVG。

  4. IGListKit UICollectionView 框架,建立高速、灵活的列表。提供可复用的单元格、组件和易于扩展的 API,支持多种数据类型。diff 算法解耦,可定制 diff 行为。使用 Objective-C 编写,同时提供完整的 Swift 互操做支持。

  5. Charts iOS/tvOS/macOS 图表绘制库。在 Android 开发者间很流行的图表绘制库 MPAndroidChart 的 Swift 移植版。

  6. SnapKit iOS 和 macOS 自动布局 DSL。

  7. Blueprint Square 最近开源的声明式 iOS UI 框架。使用 Swift 编写。该框架尚处于试验阶段,但已应用于 Square 生产环境应用。

  8. QMUI 腾讯开源的 iOS UI 解决方案。

  9. IQKeyboardManager 自动防止弹出键盘遮盖 UITextField/UITextView

  10. TORoundedButton 基于 UIControl 类实现的圆角矩形按钮控件。在提供众多定制样式的选项的同时仍保持尽量高的图形性能。使用 Objective-C 编写,不过彻底兼容 Swift(Swift 下的类名为 RoundedButton)。

  11. Swift Algorithm Club 算法和数据结构,除了 Swift 代码,还配有详尽的解释!

  12. LeetCode by Swift LeetCode 问题的 Swift 解答。

  13. Open-Source iOS Apps 开源 iOS 应用列表,可供观摩借鉴。

你有什么能够补充进上面这个列表的项目吗?欢迎留言分享你的发现和创造!

相关文章
相关标签/搜索