\

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

\

\\

随着Swift 4.1进入beta阶段,Swift团队开始将注意力聚焦在新版本Swift 4.2的开发上。新版本除了bug修复和编译性能方面的改进,还会继续增强Application Binary Interface(ABI)稳定性。

\\

Swift 4.2的主要目标是为ABI稳定性做准备,ABI将会是Swift 5的主要目标。据苹果公司语言和运行时经理Ted Kremenek透露,Swift 4.2将会对ABI的底层做出一些与性能有关的改动,目的是在Swift 5中正式发布最终版的ABI之前,能够从开发者那里获取反馈。

\\

与Swift 4.2相关的代码都提交到swift-4.2-branch,每两周从master分支合并一次。从4月20号开始,在从master分支进行最后一次合并之后,swift-4.2-branch只接受关键的bug修复代码。

\\

ABI稳定性让不同版本Swift编译出来的应用程序和类库可以兼容,对于框架开发者来说,这是最基础的一项特性。如果缺乏ABI稳定性,那么就需要为不同版本的编译器提供不同版本的框架。ABI仪表盘上列出了ABI最终版需要包含的变更清单,将于2018年下半年发布,不过目前并不清楚哪些变更将被包含在Swift 4.2中,哪些将被包含在Swift 5中。

\\

为了遵守Swift 4的诺言,Swift 4.2会继续保证兼容4.x的代码,也就是说,能用Swift 4.x编译器编译的代码也可以使用Swift 4.2的编译器进行编译。不过,这并不包含因bug修复导致的破坏性变更,也就是那些因编译器的bug而能够通过编译的错误代码。在兼容模式下,仍然可以使用Swift 4.2来编译Swift 3的代码。

\\

Swift 4发布于2017年9月,目标是改进语言和编译器性能和稳定性,同时保持代码的兼容性。ABI稳定性原本是Swift 4的目标,后来被延期到了Swift 5中。

\\

查看英文原文:Swift 4.2 Enters Final Development Stage, Paving the Way for Swift 5

Swift 4.2进入最后开发阶段,为Swift 5铺平道路相关推荐

  1. 软件开发环境-按开发阶段分类

    按开发阶段分类,有前端开发环境(支持系统规划.分析.设计等阶段的活动).后端开发环境(支持编程.测试等阶段的活动).软件维护环境和逆向工程环境等.此类环境往往可通过对功能较全的环境进行剪裁而得到.软件 ...

  2. IOS开发笔记(Swift):UITableView表格视图的静态使用

    2019独角兽企业重金招聘Python工程师标准>>> 最近一段时间都在准备IOS的开发,学习swift语言,之前做过很多类型的开发:前端.Java Web..net.Android ...

  3. android os自动安裝软件,[图]Bliss OS 12进入开发阶段:可在桌面设备上安装Android 10系统...

    此外还对电池进行了优化,添加了额外的安全性选项和相关功能,支持大部分主流游戏手柄,兼容ARM / ARM64应用程序. 目前Bliss OS 12已经进入早期开发阶段,有望让您在PC上运行最新的And ...

  4. 吃货开发 阶段01 类的定义 方法的布局 0925

    吃货开发 阶段01 类的定义 方法的布局 0925 视频 吃货联盟0925-01 定义订单类Order - 西瓜视频 https://www.ixigua.com/687631188571367067 ...

  5. 测试分类-软件开发阶段的各个测试

    大家好,我是十一. 还记得我们上篇中的测试分类图吗?其中有一部分是"按软件开发阶段划分",不记得没关系,这里我截了图出来,大家直接看图吧. 这个图呢就是我们这篇所要讲解的内容.主要 ...

  6. 软件测试类型按开发阶段的划分

    软件测试类型按开发阶段分为单元测试,集成测试,确认测试,系统测试,验收测试 (1)单元测试: 单元测试又称为模块测试,是针对软件设计的最小单位程序模块进行正确性检查的测试工作,单元测试需要从程序内部结 ...

  7. 软件工程——软件开发阶段(概要设计、详细设计)

    需求分析确定了系统的开发目标,下一步工作就是软件设计.软件设计可以进一步地 分为两个阶段:总体设计和详细设计.确定系统的具体 实现方案.给出软件的模块结构.编写各个文档 目的是什么? 承上(需求)启下 ...

  8. oracle 触发器性能优化,Oracle设计开发阶段的性能优化策略

    我们都知道提高Oracle数据库的相关系统的实际运行效率,它是整个计算机的实际应用信息系统的高效运行的前提与保证.其实影响Oracle设计开发阶段的相关性能的因素很多,既有软件方面的因素. 也包括数据 ...

  9. 【软件测试】按照开发阶段划分:单元测试、集成测试、系统测试

    测试的分类可以从很多方面来划分,例如按照开发阶段划分.按照测试实施组织划分.按照是否运行划分,这篇博客主要内容是按照开发阶段划分的测试的种类. 首先我们要了解测试金字塔: 最上层是UI界面层,包含功能 ...

  10. 从零开始的iOS开发:00 | Swift基础语法(上)

    目录 一.开发环境 二.关于Swift (一)Swift简介 (二)Swift特性 (三)结语 三.Swift基础语法 (一)编程准备 (二)Hello,world! (三)简单值 1.变量与常量 2 ...

最新文章

  1. LeetCode简单题之完成一半题目
  2. mysql汉字转拼音函数
  3. 最小二乘法和梯度下降法有哪些区别?
  4. python那么慢为什么还有人用-为什么Python运算慢还拿来搞AI?这三点大多数都不知道?...
  5. Android画图之Matrix(一)
  6. 在参数上使用@Param(“paramName”)注解”解决了传多个参数的问题
  7. PaddlePaddle训练营——公开课——AI核心技术掌握——第1章迈入现代人工智能的大门——Modern AI骨架脉络
  8. 从单体到Flink:一文读懂数据架构的演变
  9. 飞龙的程序员书单 – 编程语言
  10. Vivado中电路结构的网表描述
  11. 经典机器学习系列(十二)【学习排序】
  12. 高等代数——大学高等代数课程创新教材(丘维声)——第0章 笔记+习题
  13. 近12年的计算机考研408真题及答案解析分享
  14. Element UI练习
  15. shuipFCMS收集2
  16. 【CSS】三行实现一个黑白网格背景(渐变)
  17. USDP安装部署及问题
  18. Elixir: Enum函数总结
  19. win7原版镜像_AMD平台B450主板安装WIN7教程
  20. 爱奇艺成为国内首家启用AV1格式的视频网站

热门文章

  1. JavaScript开发者的工具箱
  2. GIS基础软件及操作(十二)
  3. ThinkPHP3.2.3完全开发手册离线手册
  4. 【软考】(五)网络互联设备
  5. Java开发笔记(一百三十三)Swing的菜单
  6. DcotrineFixtureBundle学习
  7. SpingMVC之拦截器
  8. JS中innerHTML 和innerText和value的区别
  9. Java操作zip压缩和解压缩文件工具类
  10. 第五章 APP元素定位