《HarmonyOS:领航者说》技术公开课来啦,大咖分享、实战解码,不容错过 了解详情
写点什么

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

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

关注

评论 1 条评论

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

基于 LobeChat 构建企业内部 LLM 知识库平台

亚马逊云科技 (Amazon Web Services)

中昊芯英荣获首届福布斯中国投资价值初创企业100强

科技热闻

MySQL性能飙升10倍的终极优化!架构设计实战,让数据库永不崩溃

程序员高级码农

Java MySQL 面试 :MySQL 数据库

如何彻底删除Mac应用软件?掌握这些方法,轻松搞定,干净又彻底

阿拉灯神丁

MacBook Mac软件 应用程序卸载 CleanMyMac X中文版 卸载清理软件

MCP详解及手把手实战

知识浅谈

MCP MCP协议

Arthas trace (方法内部调用路径,并输出方法路径上的每个节点上耗时)

刘大猫

人工智能 机器学习 大数据 Arthas 大模型

BOE(京东方)携手国家大剧院打造话剧《林则徐》第二现场

科技大数据

清华大学携手蚂蚁集团攻坚安全科技,获得中国电子学会科技进步一等奖

新消费日报

清华联合蚂蚁斩获电子学会科技进步一等奖 可信AI技术获国家级学会认可

新消费日报

一篇图文详解PID调参细节,实现PID入门到精通

芯动大师

使用Gone MCP 组件编写MCP Server

大鹏

golang MCP Gone依赖注入

[方式举例]快速把电脑excel电子表格联系人号码一键批量导入手机通讯录里

一码平川

CFD专栏丨空调管路流动噪声LBM仿真

Altair RapidMiner

CAE Hypermesh CFD 流体仿真 振动噪声

深度解析LLM参数:Top-K、Top-p和温度如何影响输出随机性?

xiaoxi666

AI 大模型

PIRF 431 - Billionaire Gains.pdf

Echo!!!

English

《人民日报》:助力高校毕业生高质量充分就业

安全乐谷

面试 找工作 简历 实习 校招

《Operating System Concepts》阅读笔记:p735-p737

codists

操作系统

在 Amazon Graviton 上运行大语言模型:CPU 推理性能实测与调优指南

亚马逊云科技 (Amazon Web Services)

数实融合突破千万级用户!解码珠海万达商管的智慧进化论

新消费日报

百度电商扩大七项「外贸转内销」专项扶持计划

极客天地

Spine 动画教程:皮肤制作

北桥苏

动画制作 Spine

【转】 FMEA

虚实的星空

Hume 推出 Octave TTS 即时模式,250 毫秒响应;客服语音智能体 Sona:简单集成、高度自定义丨日报

声网

相得益彰 — 基于 GraphRAG 事理图谱驱动的实时金融行情新闻资讯洞察

亚马逊云科技 (Amazon Web Services)

Arthas tt(方法执行数据的时空隧道,记录下指定方法每次调用的入参和返回信息,并能对这些不同的时间下调用进行观测)

刘大猫

Arthas java 阿里监控 tt 时空隧道

《Operating System Concepts》阅读笔记:p738-p747

codists

操作系统

【HarmonyOS 5】VisionKit人脸活体检测详解

GeorgeGcs

教你几招判断LED显示屏的好坏

Dylan

LED显示屏 全彩LED显示屏 户外LED显示屏 led显示屏厂家 户内led显示屏

[方案举例]大量excel联系人号码批量快速导入iPhone苹果手机和安卓手机的通讯录

一码平川

征程 6|部署模型尾部 conv 输出 type/layout/scale 解读

地平线开发者

自动驾驶; 算法工具链 地平线征程6

[几种方法]手机号码批量导入手机通讯录的三种超简单方法,适用于苹果iphone安卓手机华为小米手机等导入联系人号码

一码平川

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