【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Swift 5 进入发布倒计时

  • 2018-10-07
  • 本文字数:851 字

    阅读完需:约 3 分钟

在正式发布 Swift 4.2 之后,Swift 团队现在启动了发布过程的最后阶段,把注意力集中在了 Swift 5 上。Swift 5 计划于 2019 年初发布,其目标是在保持源代码兼容性的同时,实现 ABI 稳定性。

ABI 稳定性大致可以理解为跨 Swift 版本的“二进制兼容性”。ABI 稳定性允许将框架链接到程序,而不管使用了哪个编译器版本来编译它们,只要两个编译器生成的代码都符合即将到来的 Swift ABI。对于第三方框架开发者以及在苹果公司内部推广 Swift 应用来说,这是一个关键的特性。ABI 稳定性最初计划在Swift 3 中实现,但后来由于大量的新语言特性正在开发而延迟。

如前所述,ABI 稳定性不包括苹果所说的模块稳定性,后者可以描述为与未来编译器版本兼容的库的接口。换句话说,ABI 稳定性影响的是框架运行时链入程序的能力,模块的稳定性关注的是在使用更新版本的编译器(例如Swift 6)构建程序时可以使用使用旧版本的编译器(例如Swift5)构建的库。模块稳定性肯定是需要的,因为它可以简化开发人员在多个账户下的开发,但并不关键。目前还不清楚,模块稳定性是否会加入Swift 5。

Swift 5 还包括若干新语言特性其中有些已经实现,因此,这些特性毫无疑问会加入这个版本中,其中包括:

  • “本体键路径( Identity key path )”:这提供了一种方法,使开发人员可以使用 self 伪属性引用符合该路径的整个值。

  • count(where:) :这提供了在满足布尔表达式的 Sequence 中计算元素个数的可能性。

  • 原始字符串分隔符:它允许开发人员将任何需要转义的字符包含在以""“分隔的字符串中,而不是使用单引号(”)。

其他特性仍然在开发之中,包括扁平化来自 try? 的嵌套选项 simd vectors 用户定义的动态“callable”类型,等等。

所有新的语言特性都不会破坏源代码的兼容性,也就是说,大多数兼容Swift 4.2 编译器的源代码都应该使用Swift 5.0 编译器进行编译。不过,4.2 版本之前的Swift 版本不是源代码兼容的,至少应该升级到Swift 4.2 版本。开发团队将定期发布趋近5.0 版本的可下载快照

查看英文原文: Swift 5 Enters the Latest Stage of Release

2018-10-07 08:232002
用户头像

发布了 1008 篇内容, 共 374.1 次阅读, 收获喜欢 340 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

linux中的内部命令和外部命令

工程师日月

Linux 7月月更

Spring全家通之SpringMVC如何传递参数以及返回值的类型

Java学术趴

7月月更

使用pytorch自己构建网络模型实战

秃头小苏

PyTorch 7月月更

【MySql项目实战优化】复杂触发器案例分享

安逸的咸鱼

MySQL 实战 7月月更

在线随机抛硬币正反面统计工具

入门小站

工具

jQuery 基础动画

Jason199

js JQuery框架 7月月更

现实世界的快与慢

耳东@Erdong

随笔杂谈 7月月更

数据结构与算法之树与二叉树(理论篇)

未见花闻

7月月更

SDL键盘事件

柒号华仔

7月月更

【愚公系列】2022年07月 Java教学课程 06-常量

愚公搬代码

7月月更

分享5个Vue开发小技巧

程序员海军

Vue 7月月更

Qt|使用Http通讯下载页面实时显示

中国好公民st

qt 7月月更

微服务间的通信协议和消息格式

穿过生命散发芬芳

7月月更 微服务通信

使用 PixCap 和 ReadyPlayerMe 快速制作3D 模型动画

devpoint

3D 7月月更 pixcap readyplayerme

【算法社区】十大排序算法详解

小明Java问道之路

数据结构 算法 排序 排序算法 7月月更

zookeeper-zookeeper的应用场景

zarmnosaj

7月月更

在线XML转JSON工具

入门小站

工具

【深度】新派LaaS协议Elephant:重振DeFi赛道发展的关键

股市老人

DeFi 2.0的LaaS协议Elephant,重振DeFi赛道发展的关键

鳄鱼视界

如何设计自动化测试case?

老张

自动化测试

产品思维助力研发管理工具建设

研发管理Jojo

产品思维 研发管理工具 用户旅程 协同共创

闭会算法好题之2020ICPC澳门站签到A题

KEY.L

7月月更

100 条 Linux vim 命令备忘单,收藏起来随时备用!

wljslmz

vim Linux 运维、 7月月更

云原生指南之什么是云原生基础架构

宇宙之一粟

云原生 7月月更

DeFi 2.0的LaaS协议Elephant,重振DeFi赛道发展的关键

EOSdreamer111

C#入门系列(二十四) -- 密封类和静态类

陈言必行

7月月更

TOGAF中的本手和妙手

涛哥 数字产品和业务架构

企业架构 TOGAF

前端值得一看的ArkUI框架进度指示器

坚果

开源 HarmonyOS OpenHarmony Open Harmony 7月月更

Docker安装Redis!!!(含每一步详细图解)实战

宁在春

redis Docker 7月月更

Iptables的基本原理

阿泽🧸

iptables 7月月更

数据要素

奔向架构师

数据资产 7月月更

Swift 5进入发布倒计时_开源_Sergio De Simone_InfoQ精选文章