阿里云ODPS普惠算力再升级,Data+AI全产品降价低至59元! 了解详情
写点什么

Apple 开源了 Swift Migrator

  • 2017-07-12
  • 本文字数:675 字

    阅读完需:约 2 分钟

Apple 近期在 WWDC 2017 大会上宣布,已经开源在了 Xcode 9 中提供的的 Swift 4 Migrator。

Swift Migrator 现已完全重写,业已成为编译器的一个组成部分,而不再是一个独立的工具,并对 Swift 3 和 Swift 4 提供同等优秀的支持。Migrator 的工作是通过下面一系列的测试(Pass)完成的:

  • Pre-fix-it 测试。在编译器不能对主输入文件做类型检查时,执行该测试。在此情况下,Migrator 会应用编译器给出的所有 fix-it 建议,该过程至多重新尝试两次,目的在于生成代码的抽象语法树(AST)表示。
  • AST 测试。如果开发人员需要迁移 Swift 4 之前的代码,那么需要在 Pre-fix-it 测试之后开展 AST 测试。测试包括考虑所有以前的 SDK 在 API 层次上的改进,使得源代码能匹配新的 SDK API。
  • Post-fix-it 测试。该测试尝试去应用所有 Swift 4 模式编译器给出的 fix-it 建议。这一步骤最多执行七次,因为在每个 fix-it 测试过程中可能会出现新的问题。

在 Pre-fix-it 和 Post-fix-it 测试阶段,对于所有关联到错误的 fix-it,Migrator 是默认应用的;而对于关联到警告的 fix-it,Migrator 是选择性使用的。

值得注意的是,虽然Apple 鼓励项目迁移到Swift 4,但代码迁移并非是严格要求的,因为Swift 3.2 和4 的编译目标可以共存并链接到一起。此外,开发人员不应该期待被迁移的代码块会自动生成一个可编译项目,迁移后的代码也无法保证是正确的,或是符合语言习惯的。一系列迁移到Swift 4 的已知问题,以及所有可用的解决方案,都以文档形式提供于 Xcode 9 的发行说明中,文档对所有注册的开发人员可用。

查看英文原文: Apple Open-sources the Swift Language Migrator

2017-07-12 19:002475
用户头像

发布了 227 篇内容, 共 81.7 次阅读, 收获喜欢 28 次。

关注

评论

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

【免费报名】与阿里云一同探索视频云的新技术与新场景

阿里云CloudImagine

阿里云 音视频 视频编码 视频编解码 视频云

只需一篇文章吃透Java多线程技术,内容非常全面

Java 程序员 后端

10年阿里开发架构师经验分享:享学课堂架构师vip百度云

android 程序员 移动开发

1307页阿里Android面试全套真题解析在互联网火了,附赠复习资料

android 移动开发

厉害了!尚硅谷mysql中employees表,腾讯T2手把手教你

Java 程序员 后端

厉害了,java入门电子书百度网盘下载,Java中高级面试

Java 程序员 后端

只需一篇文章吃透Java多线程技术,那些BAT大厂的Java面试官到底在想些什么

Java 程序员 后端

DevOps 时代的高效测试之路

CODING DevOps

DevOps 团队 自动化测试 持续交付

100%好评,扔物线学堂

android 程序员 移动开发

我有一台服务器,能干啥?

程序员鱼皮

程序员 IT 代码 计算机 java

大数据Flink作业

Clarke

10天用Flutter撸了个高仿携程App,2021年Android面试心得

android 程序员 移动开发

12道Android高级面试题:android项目开发实战入门百度网盘

android 程序员 移动开发

2019-2021历年华为跳动Android面试真题解析,面经解析

android 程序员 移动开发

华为财经2021春招面试,尚硅谷springboot笔记,最全Java知识总结

Java 程序员 后端

卧薪尝胆70天内推入职阿里,2021Java春招

Java 程序员 后端

厉害了!java使用教程视频,我的Java春季历程

Java 程序员 后端

1-3年Android开发工程师面试经验分享,真的太香了

android 程序员 移动开发

15分钟的字节跳动视频面试,34岁Android程序员裸辞

android 程序员 移动开发

1个月学会Android开发!动脑学院vip

android 程序员 移动开发

2020-2021华为Android面试真题,凭借这份Android面试题集

android 程序员 移动开发

声纹识别帮你守住钱袋子,聊一聊证券行业里的人工智能

Zilliz

AI 向量检索 Milvus 向量

原来SqlSession只是个甩手掌柜,Redis有几种数据类型

Java 程序员 后端

反向代理、负载均衡实战,【深度思考

Java 程序员 后端

使用 Spring Boot 进行单元测试

码语者

Java Spring Boot Unit Test

12道Android高级面试题:android开发视频百度网盘

android 程序员 移动开发

只用了几百行代码写的百度搜索引擎,程序员Javaweb源码

Java 程序员 后端

史上最全的Java面试题集锦,高级Java工程师面试技术

Java 程序员 后端

QCon复盘之《58 集团反爬系统建设之路》

IT蜗壳-Tango

Qcon 10月月更

人力资源管理系统和oa的区别?

优秀

低代码

河北联通全光智慧专线,构筑更智运营新体验

Apple开源了Swift Migrator_Linux_Sergio De Simone_InfoQ精选文章