BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Xcode 8带来Swift 3、编辑器插件,以及更多其他功能

| 作者 Sergio De Simone 关注 17 他的粉丝 ,译者 大愚若智 关注 9 他的粉丝 发布于 2016年6月21日. 估计阅读时间: 3 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

Apple在WWDC 2016大会上公布了 适用于iOS、macOS、tvOS,以及watchOS的最新版IDE:Xcode 8。目前依然处于Beta测试版的Xcode 8包含Swift 3,改进的地址和线程清理器(Address and thread sanitizer),新的编辑器扩展体系结构等新特性。

Apple于2015年12月将Swift开源,而Swift 3是在这之后发布的首个主要版本。在InfoQ之前发布的一篇报道中提过,Swift 3并不是对这一开发语言的版本更新,同时也无法与老版本实现二进制兼容。为了帮助开发者将Swift 2.x代码顺利移至Swift 3,Xcode 8提供了Swift迁移工具。按照惯例,在使用Xcode迁移工具时必须确保代码架构中包含所有需要转换的目标,并且代码必须能在Xcode 7.3中实现无错误编译。不过就算满足这些前提条件,迁移工作依然可能失败。Swift博客列出了在迁移失败后可以考虑采用的解决方法。

Xcode 8还提供了全新的运行时清理器和更严格的静态分析器:

  • 新增的线程清理器可以帮助开发者在Swift和Objective-C中发现和理解并发情况下出现的数据争用问题和其他Bug。
  • 地址清理器现已支持Swift代码,可以帮助开发者找出与UnsafeMutablePointer有关的问题,Swift主要使用UnsafeMutablePointer实现与C调用有关的互操作
  • 静态分析器现已支持通过更“激进”的方式检查是否存在为空性(Nullability)违背。该功能可检查项目和System Header调用是否存在违背,所有新项目均默认启用该功能。

Xcode运行时清理器和静态分析器中包含的新功能只能用于Swift 3。

在UI方面,Xcode已可支持编辑器扩展,借助该功能可对Xcode编辑器进行定制。Xcode 8还提供了用于创建编辑器扩展的全新项目模板。为防止编辑器扩展影响Xcode的稳定性,Xcode编辑器扩展会在独立的进程中运行。

Apple称,Xcode 8的速度比老版本有大幅提高。尤其是重新设计的Interface Builder可以实现更高速度和更完善的控制能力,帮助开发者实时预览应用在任何Apple设备上的呈现效果。

若想进一步了解Xcode 8的所有改进,建议阅读Xcode 8发布说明。Xcode 8安装文件体积5.5GB,可从Apple Developer Connection下载页面下载。发布说明和Xcode 8安装文件仅限已注册开发者访问,但无需具备付费账户。

查看英文原文Xcode 8 Brings Swift 3, Editor Plug-ins, and More

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT