写点什么

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

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

关注

评论 1 条评论

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

再谈BOM和DOM(6):dom对象及event对象位值计算—如offsetX/Top,clentX

zhoulujun

DOM event对象

机器学习

i30M

数字人民币发展的动因、机遇与挑战

CECBC

架构实战营 模块 8 课后作业

༺NPE༻

真的有落地的数据中台么?

escray

学习 极客时间 7月日更 数据中台实战课

在分布式中如何优化大数据存储结构

喵叔

7月日更

深入了解Spring之Spring Batch框架

邱学喆

数据分片 spring-batch Tasklet 流式任务

自建开发工具系列-Webkit内存动量监控UI(五)

Tim

typescript js 转 ts tsx tsconfig

模块八:设计消息队列存储消息数据的 MySQL 表格

ifc177

实时个性化推荐(三十六)

Databri_AI

算法 推荐系统

金融机构数字化转型进行时:隐私计算技术成香饽饽,多家银行已开展试点应用

CECBC

MySQL事务分析

卢卡多多

事务 事务隔离 7月日更

Linux之chmod命令

入门小站

Linux

用mysql模拟实现消息队列

白发青年

#架构实战营

设计消息队列存储消息数据的 MySQL 表结构

贯通

架构实战营

再谈BOM和DOM(5):各个大流浪器DOM和BOM里面的那些坑—兼容性

zhoulujun

DOM事件兼容性

GIS坐标系测绘原理:大地水准面/基准面/参考椭球体/EPSG/SRI/WKT

zhoulujun

GIS

再谈BOM和DOM(7):HTML DOM Event 对象属性及DOM事件详细列表

zhoulujun

DOM DOM事件

【HikariCP技术专题】原理和使用介绍(原生态开发使用)

码界西柚

HikariCP 7月日更 HikarCP使用 数据源连接池

在线IEEE浮点二进制计算器工具

入门小站

工具

让区块链为“三张牌”赋能

CECBC

架构实战营 模块八作业

netspecial

架构实战营

2021年,有哪些堪称神器的Python工具包?

Jackpop

Python GitHub

再谈BOM和DOM(4):DOM0/DOM2事件处理分析

zhoulujun

DOM DOM事件 DOM0 DOM2

抖音打击刷量控评行为:数据造假是互联网行业的毒瘤

石头IT视角

探秘RocketMQ事务机制,如何保证消息零丢失

慕枫技术笔记

Java RocketMQ 后端

11款开发者必备插件,第1款简直神器!

Jackpop

chrome 开发

再谈BOM和DOM(3):DOM节点操作-元素样式修改及DOM内容增删改查

zhoulujun

DOM BOM 文档对象 DOM结点操作 DOM增删改查

Python打包有没有更好的软件了啊

IT蜗壳-Tango

7月日更

Ansible Playbook - 01

耳东@Erdong

ansible 7月日更 ansible Playbook

模块七:王者荣耀商城异地多活架构设计

ifc177

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