写点什么

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:232266
用户头像

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

关注

评论 1 条评论

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

从JVM底层原理分析数值交换那些事

Java 架构 JVM

Linkerd or Istio?哪个Service Mesh框架更适合你?

xcbeyond

Service Mesh istio 技术选型 Linkerd 3月日更

VMware Workstation

梅花鹿鹿

虚拟机

Wireshark数据包分析学习笔记Day2

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

翻译:《实用的Python编程》03_06_Design_discussion

codists

Python

使用 Puppet 进行配置管理

码语者

DevOps 配置管理

女神节|深情告白季,程序员和他的浪漫

InfoQ写作社区官方

热门活动

mysql常用命令

Sakura

程序员成长第二十篇:刚晋升管理者,有哪些方面要注意?

石云升

程序员 28天写作 职场经验 管理经验 3月日更

单点登录(SSO)

一个大红包

SSO 28天写作 单点登录 3月日更

用户画像实践

Jackchang234987

JAVA学习心得

张鹤羽

28天写作 3月日更

容器 & 服务:K8s 与 Docker 应用集群 (二)

程序员架构进阶

Docker 持续集成 kubernete 服务化 3月日更

方法论分享之:刻意练习,微小改进

boshi

方法论 经验分享 七日更

在一个操蛋(执行力极差)的团队工作是一种怎样的体验?

冰河

团队管理 程序人生 执行力 问题总结 团队成长

终于讲清楚了:深入理解Java 应用程序中 final 关键字的各种使用场景

老王说编程

Java final

政府区块链招投标市场活跃 “区块链+警务”等多元化领域成​方向

CECBC

什么是开放艺术?探讨融合区块链技术的新艺术范式

CECBC

进程和nginx

一个大红包

28天写作 3月日更

2021最新腾讯面经分享:Java面试刷题PDF(17个专题 5000字解析)

比伯

Java 编程 程序员 架构 面试

作业 - 第五周

eva

写作对我来说是什么?

lenka

产品经理 写作 3月日更

OSPF路由协议基本知识点大全

【回溯算法】组合总和升级版 ...

宫水三叶的刷题日记

面试 LeetCode 数据结构和算法

震撼来袭!2021版全新版Java面试笔记现世,简直把所有Java知识面试题写出来了

Java 架构 面试

当开工季遇上采购季,云通信主播教你怎么省心又省钱

阿里云Edge Plus

云通信

融云CEO韩迎:飞信十年珍贵历练,做To B别有取巧的心思

融云 RongCloud

IM RTC 飞信

2021最新分享面试跳槽宝典:互联网大厂Java高级工程师核心面试498题(附解析)

比伯

Java 编程 程序员 架构 面试

搜狐三面:说说你是怎么解决MySQL死锁问题的!

Java架构师迁哥

表达的时代

ES_her0

28天写作 3月日更

LeetCode题解:309. 最佳买卖股票时机含冷冻期,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

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