网易首页 > 网易号 > 正文 申请入驻

苹果“最强编程语言”10周年重磅更新——Swift 6正式发布:全面支持Linux和Windows、增强与C++的互操作性

0
分享至

  Swift 是苹果公司推出的编程语言,旨在替代 Objective-C,后者自 20 世纪 80 年代初以来基本没有任何更新,缺乏现代语言功能。

  2014 年 6 月 2 日,苹果在 WWDC 上首次发布了 Swift,以及第一个公开使用 Swift 编写的应用程序:WWDC 应用程序,同时向苹果的注册开发者发布了 Swift 语言的测试版,但未承诺最终版本与测试版本的源代码相互兼容。

  苹果宣称 Swift 的特点是:快速、现代、安全、互动,而且明显优于 Objective-C 语言。

  2014 年 9 月 9 日,Swift 1.0 和 iOS 8、Xcode 6.0 一同正式发布GM版本,达成了一个重要的里程碑。

  就在今天,苹果为 Swift 发布了 10 周年重磅更新:Swift 6

  该版本带来了语言和标准库的增强、改进的调试工具、跨平台库的扩展以及对嵌入式开发和生产力工具的支持。

  Swift 6 的发布为 Swift 语言带来了显著的进步,包括对并发、类型化异常抛出、所有权、C++ 互操作性、嵌入式 Swift 以及 128 位整数的支持和改进。

  它引入了新的同步库、类型化抛出机制、对不可复制类型的支持以及对嵌入式开发的初步支持。

  此外,Swift 6 还增强了对 C++ 的互操作性,统一了 Foundation 在所有平台上的实现,并推出了全新的 Swift Testing 库。

  该版本还提供了对 Linux 和 Windows 平台的全面支持,包括对更多 Linux 发行版和 Windows 架构的支持,以及为 Linux 提供了全静态 SDK

  Swift 6 还致力于提高生产效率,通过引入新的生产力增强功能和改进的调试宏,使得开发者能够更高效地编写和调试代码。

  几个亮点:

  并发安全

  Swift 长期以来一直提供内存安全性,确保变量在使用前初始化,内存在释放后不会被访问,并且会检查数组索引是否存在越界错误。

  Swift 6 现在包含一种新的可选语言模式,该模式扩展了 Swift 的安全保证,通过将代码中潜在的数据争用诊断为编译器错误来防止并发代码中的数据争用。

  数据竞争安全检查以前在 Swift 5.10 中通过编译器标志-strict-concurrency=complete以警告形式提供。

  得益于改进的推理和用于将可变状态从一个参与者转移到另一个参与者的新编译器分析,Swift 6 关于数据竞争安全的警告误报更少。

  Swift 6 标志着数据竞争安全性的起步,该旅程将大大简化。Swift 6 还附带了一个用于低级并发 API 的新同步库,包括原子操作和新的互斥 API。

  类型化异常抛出

  Swift 6 允许函数在其签名中指定其抛出的错误类型。此功能在转发客户端代码中抛出的错误时,或在无法分配内存的资源受限环境中(例如嵌入式 Swift 代码)非常有用。

  例如:

  func parseRecord(from string: String) throws(ParseError) -> Record { // ... }

  调用parseRecord(from:)将返回一个Record实例或抛出一个类型的错误ParseErrordo..catch块将推断变量ParseError的类型error

  do { let record = try parseRecord(from: myString) } catch { // 'error' has type 'ParseError' }

  C++ 互操作性

  Swift 5.9 引入了与 C++ 的双向互操作性,将 Swift 无缝引入更多现有项目。

  Swift 6 将互操作性支持扩展到 C++ 仅移动类型、虚拟方法、默认参数以及更多标准库类型包括std::mapstd::optional

  嵌入式 Swift

  Swift 6 包含 Embedded Swift 的实验性预览版,这是一种语言子集和编译模式,适用于嵌入式软件开发,例如编程微控制器。该工具链支持 ARM 和 RISC-V 裸机目标。

  Embedded Swift 依靠通用特化生成小型独立二进制文件。由于它不依赖于运行时或类型元数据,因此 Embedded Swift 适用于内存限制严格的平台以及运行时依赖性有限的低级环境。

  嵌入式 Swift 仍然是一个实验性功能,在未来的 Swift 版本中提供稳定支持之前仍需持续开发。

  Swift 6 提供了统一的 Foundation 实现,确保了跨平台的一致性和可靠性,并且为 Linux 和 Windows 平台提供了全面的支持。

  Swift 6 统一了 Foundation 在所有平台上的实现。现代、可移植的 Swift 实现提供了跨平台的一致性,它更加强大,并且是开源的。

  macOS 和 iOS 开始使用 Foundation 的 Swift 实现以及 Swift 5.9,而 Swift 6 将这些改进带到了 Linux 和 Windows。

  核心类型如 JSONDecoder、URL、Calendar、FileManager、ProcessInfo 等已在 Swift 中完全重新实现。这些类型与 macOS 15 和 iOS 18 共享其实现,从而提供了全新级别的跨平台一致性、可靠性和性能。

  Swift 6 推出了 Swift Testing 库,这是一个专为 Swift 设计的全新测试框架,它提供了丰富的 API 和宏支持,使得编写和组织测试变得更加容易。

  Swift 6 引入了 Swift Testing,这是一个从零开始为 Swift 设计的新测试库。它包含了富有表现力的 API,使编写和组织测试变得简单。当测试失败时,它使用像 #expect 这样的宏提供详细的输出。

  此外,它还具备参数化等功能,能够轻松地在大型代码库中以不同参数重复执行测试。

  例如:

  @Test("Continents mentioned in videos", arguments: [ "A Beach", "By the Lake", "Camping in the Woods" ]) func mentionedContinents(videoName: String) async throws { let videoLibrary = try await VideoLibrary() let video = try #require(await videoLibrary.video(named: videoName)) #expect(video.mentionedContinents.count <= 3) }

  Swift 6 对调试工具进行了改进,包括引入了新的调试宏,以及提高了 LLDB 调试器的启动性能

  Swift 6 提供了一种新的调试宏,可以轻松自定义在使用 p 命令时对象在 LLDB 中的显示方式,以及在 Xcode 和 VSCode 的变量视图中,采用一种不运行任意代码的格式方案。

  符合 CustomDebugStringConvertible 协议的类型提供了一个 debugDescription 属性,该属性返回描述对象的字符串。

  在 LLDB 中,po 命令调用该计算属性。相比之下,p 命令使用 LLDB 的类型摘要格式化程序直接根据其存储属性值来格式化对象。

  @DebugDescription 是标准库中的一个新宏,它允许开发者直接在代码中为自己的类型指定 LLDB 类型摘要。该宏处理 debugDescription 属性,将涉及存储属性的简单字符串插值转换为 LLDB 类型摘要。

  这使得即使在使用 p 时,LLDB 也能使用您的自定义格式,并且可以在 Xcode 或 VSCode 的变量显示窗口中使用。

  该宏可以利用现有的 CustomDebugStringConvertible 符合性,也可以仅为 LLDB 的 p 命令提供单独的字符串插值。

  平台支持

  Swift 6 全面为 Linux 和 Windows 带来了重大改进,包括支持更多 Linux 发行版和 Windows 架构。

  Swift 6 支持为 Linux 构建完全静态链接的可执行文件;这些文件没有外部依赖项,因此非常适合想要将程序直接复制到系统或容器中并运行它而无需安装任何额外软件的情况。该 SDK 还可用于从其他平台交叉编译到 Linux。

  Swift 6 增加了对Debian 和 Fedora 以及 Ubuntu 24.04的官方支持和测试。Windows 构建性能方面,预构建的工具链现已适用于 arm64 架构,这为 ARM 主机上的 Windows 提供了改进的编译器性能。

  在 Swift 6 中,Swift 包管理器还默认在 Windows 上的多个核心上并行构建。在 10 核机器上,可以将构建性能提高多达 10 倍。

  Swift 6 下载地址:
https://www.swift.org/install/

  Swift 6 发布公告:
https://www.swift.org/blog/announcing-swift-6

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
让人倒吸一口凉气:乌军3个旅反攻俄军2个军:24小时竟打进市中心

让人倒吸一口凉气:乌军3个旅反攻俄军2个军:24小时竟打进市中心

瞳哥视界
2025-12-24 21:36:08
贾国龙摊牌了:若西贝活不下来,绝不会再创业,和夫人回草原养羊

贾国龙摊牌了:若西贝活不下来,绝不会再创业,和夫人回草原养羊

削桐作琴
2025-12-26 23:57:15
全球第 28!力压大连沈阳,天津凭什么拿下 “全球最佳城市”?

全球第 28!力压大连沈阳,天津凭什么拿下 “全球最佳城市”?

据说说娱乐
2026-01-19 15:46:37
全红婵久违亮相!荣获杰出运动员C位领奖 1人抱着5瓶矿泉水上台

全红婵久违亮相!荣获杰出运动员C位领奖 1人抱着5瓶矿泉水上台

念洲
2026-01-19 09:43:44
国省考成绩出了,短信通知心梗两次

国省考成绩出了,短信通知心梗两次

朗威谈星座
2026-01-19 11:01:42
说好的言论自由呢?陆配因说“迟早红旗插满台湾”遭废除居留许可

说好的言论自由呢?陆配因说“迟早红旗插满台湾”遭废除居留许可

海峡导报社
2026-01-19 11:04:13
格陵兰岛的原住民,为什么长得像中国人?他们是华夏后裔吗?

格陵兰岛的原住民,为什么长得像中国人?他们是华夏后裔吗?

阿讯说天下
2026-01-19 13:02:48
58岁女星患大肠癌放弃救治,癌细胞已扩散至肝肺部,盼有尊严离世

58岁女星患大肠癌放弃救治,癌细胞已扩散至肝肺部,盼有尊严离世

一盅情怀
2026-01-19 13:48:36
江苏省环保集团有限公司党委书记、董事长方斌斌被查

江苏省环保集团有限公司党委书记、董事长方斌斌被查

扬子晚报
2026-01-19 18:00:00
回顾许家印被抓捕现场,奋力反抗,怒吼不已,被抓捕人员抬出去

回顾许家印被抓捕现场,奋力反抗,怒吼不已,被抓捕人员抬出去

干史人
2026-01-08 22:47:00
申花两位新外援仅仅用一场热身赛,就直接征服队友,值得期待

申花两位新外援仅仅用一场热身赛,就直接征服队友,值得期待

梅亭谈
2026-01-19 17:03:17
医生严肃提醒:明年开始,73岁以上长者请提前做好这3项生活准备

医生严肃提醒:明年开始,73岁以上长者请提前做好这3项生活准备

路医生健康科普
2026-01-19 15:30:03
2013年,江青为毛泽东所摄照片拍出34万元,最初估价为3至5万元

2013年,江青为毛泽东所摄照片拍出34万元,最初估价为3至5万元

大运河时空
2026-01-19 17:05:03
A股又一翻倍牛股诞生,26天飙涨159%

A股又一翻倍牛股诞生,26天飙涨159%

21世纪经济报道
2026-01-19 09:43:05
大鱼压境!德尔加多迎最后通牒,克雷桑归化或终结他的泰山生涯

大鱼压境!德尔加多迎最后通牒,克雷桑归化或终结他的泰山生涯

体坛小鹏
2026-01-19 15:33:30
某大厂员工被裁后,郁郁而终!

某大厂员工被裁后,郁郁而终!

黯泉
2026-01-18 21:43:39
柬埔寨流浪女网红家属回应,去做服务行业,并公布流落街头的原因

柬埔寨流浪女网红家属回应,去做服务行业,并公布流落街头的原因

新游戏大妹子
2026-01-18 12:57:04
猪肚再次成为讨论对象!研究发现:常吃猪肚,可能会获取3大益处

猪肚再次成为讨论对象!研究发现:常吃猪肚,可能会获取3大益处

九哥聊军事
2025-12-15 21:18:17
以色列已经告诉世界:日本若敢拥有核武器,美国并不会第一个翻脸

以色列已经告诉世界:日本若敢拥有核武器,美国并不会第一个翻脸

八斗小先生
2025-12-26 09:33:27
特郎普对台111亿美元的军售开始送货了,还说中国拦截就要开战

特郎普对台111亿美元的军售开始送货了,还说中国拦截就要开战

我心纵横天地间
2026-01-17 20:29:09
2026-01-19 19:59:00
开源中国 incentive-icons
开源中国
每天为开发者推送最新技术资讯
7553文章数 34496关注度
往期回顾 全部

科技要闻

这一仗必须赢!马斯克死磕芯片"9个月一更"

头条要闻

梅德韦杰夫讽刺:让美国再次伟大等于让丹麦再次变小

头条要闻

梅德韦杰夫讽刺:让美国再次伟大等于让丹麦再次变小

体育要闻

错失英超冠军奖牌,他却在德甲成为传奇

娱乐要闻

吴磊起诉白珊珊诽谤,白珊珊称被盗号

财经要闻

公章争夺 家族反目 双星为何从顶端跌落?

汽车要闻

徐军:冲击百万销量,零跑一直很清醒

态度原创

教育
健康
时尚
游戏
本地

教育要闻

整体法,巧求面积!

血常规3项异常,是身体警报!

伊姐周日热推:电视剧《看得见风景的窗》;电视剧《春日狂热》......

大话手游灵猴怎么偷银两?10万黄金窗口,超过100万就收手!

本地新闻

云游内蒙|黄沙与碧波撞色,乌海天生会“混搭”

无障碍浏览 进入关怀版