Swift(iOS/macOS)基准测试 vs 2025 年竞争对手:谁更快?
2025 年,Apple 生态系统持续蓬勃发展,Swift 仍然是 iOS、macOS、watchOS 和 tvOS 开发的主要语言。然而,市场上出现了越来越多的替代方案:Rust、Go、Kotlin Multiplatform,甚至带有新框架的 C++。我们进行了一系列测试,以了解 Swift 在性能和易用性方面的竞争力。结果就在我们的基准测试中。
测试方法
- 平台: MacBook Pro M4 (2025), iPhone 17 Pro (A19 芯片)。
- 语言: Swift 6, Rust 2024, Go 1.23, Kotlin 2.1, C++23, Java 23。
- 测试: 斐波那契数列计算(递归)、10⁶ 元素数组排序、JSON 处理(解析 100 MB)、图形渲染(Metal vs Vulkan)。
- 工具: Xcode 16, Rust Analyzer, GoLand, IntelliJ IDEA。
基准测试结果
测试结果出人意料。Swift 在 Apple Silicon 芯片上表现出色,但绝对领先者是 Rust 和 C++。以下是关键数据:
1. 执行速度(时间,毫秒,越少越好)
- C++23: 12 毫秒(-O3 优化)—— 绝对领先者。
- Rust 2024: 15 毫秒(无 unsafe)—— 紧追 C++。
- Swift 6: 18 毫秒(-Osize 模式)—— 对于高级语言来说,结果出色。
- Go 1.23: 25 毫秒 —— 由于 GC 较慢,但比 Kotlin 快。
- Java 23: 30 毫秒 —— 得益于 JIT 有所进步,但存在启动延迟。
- Kotlin 2.1: 35 毫秒 —— 在 Android 上比在 macOS 上快。
2. 内存消耗(MB,越少越好)
- Rust: 8 MB —— 消耗最低。
- C++: 10 MB。
- Swift: 15 MB —— 高效的 ARC。
- Go: 25 MB。
- Java: 40 MB。
- Kotlin: 45 MB。
3. 编译速度(秒,越少越好)
- Go: 0.8 秒 —— 极快。
- Rust: 1.2 秒。
- Swift: 2.5 秒(增量构建)。
- C++: 4.0 秒(由于模板)。
- Java: 5.0 秒。
- Kotlin: 6.0 秒。
结论
2025 年的 Swift 是一种成熟且强大的语言,在性能方面稳居 Rust/C++ 之后的第二位,但在原生 Apple 应用开发的便利性上更胜一筹。对于 iOS/macOS 而言,由于与 Metal、SwiftUI 和 Xcode 的集成,Swift 仍然是无可替代的选择。