Swift — 不仅仅是苹果开发的语言
70,144 星标
还记得 Objective-C 是开发苹果产品的唯一选择吗?2014 年,苹果公司推出了 Swift——一种被认为更安全、更现代的替代语言。但如今 Swift 已经远远超越了苹果生态系统。让我们来看看这个在 GitHub 上拥有 68k 星的项目为何值得关注,即使你不在 iOS 领域开发。
现代 Swift 有什么令人惊喜之处?
-
跨平台能力 — 现在支持 Linux、Windows,甚至 WebAssembly
- 支持 Ubuntu、Amazon Linux、Debian、Windows 10
- Android 实验性构建
- 编译为 wasm 用于 Web 应用
-
安全优先
- 算术运算溢出检查
- 可选类型替代空指针异常
- 自动内存管理(ARC)
-
与 C 和 Objective-C 兼容
- 与现有库无缝集成
- 能够逐步迁移项目
有趣的是,虽然 Swift 借鉴了 Objective-C,但它是一门完全独立的语言,不是 C 的超集。下面是一个简单示例:
func greet(name: String) -> String {
return "Hello, \(name)!"
}
print(greet(name: "World"))
仓库里有什么?
主仓库包含:
- Swift 编译器(主要用 C++ 编写)
- 标准库
- 开发者工具(lldb、REPL)
- SwiftPM 包管理器支持
构建系统使用 build-script,配置灵活:
./swift/utils/build-toolchain com.example
特别方便的是,你可以创建本地工具链并在 Xcode 中连接它来测试编译器改动。
谁会在 2024 年从 Swift 中受益?
- 移动开发者 — iOS/macOS 的当然之选
- 后端开发者 — 服务端 Swift(Vapor、Perfect)正在流行
- 系统程序员 — 底层能力 + 安全性
- 跨平台团队 — 不同操作系统的单一代码库
如何开始贡献?
Swift 社区热烈欢迎新人。在提交 pull request 之前:
有趣的是:Swift 构建支持通过 distcc 加速和通过 sccache 缓存——这对于频繁重新构建很有用。
个人经验
在我的实践中,我用 Swift 进行算法原型设计——由于严格的类型系统和现代的迭代语法,迭代速度比 Python 更快,内存安全消除了整类错误。async/await 的多线程处理尤其令人印象深刻。
结论:值得一试吗?
如果你:
- 想要一种性能和安全性平衡的语言
- 正在寻找 Python 的替代品用于脚本编写,同时可编译为原生代码
- 计划跨平台开发
- 梦想通过开源影响一门语言的发展
— Swift 绝对值得你关注。从 官方网站 开始,当你准备好深入研究时——欢迎来到 GitHub 仓库!
附注:你知道 Swift 在 TIOBE 指数中排名前 20 吗?对于一门"年轻"的语言来说,这很不错!
相关项目