Xcode 11

Xcode 11 包含您所需的一切,助您打造出色的 app 并将您的 app 带进更多设备。充分利用采用声明式 Swift 语法的全新用户界面框架——SwiftUI。只需点按一下,就能让您的 iPad app 变为 Mac app。另外,Xcode 11 支持 Swift 软件包,因此您能够在所有 app 之间共享代码,或者利用由社区创建的软件包。

SwiftUI

编写更少的代码,打造更出色的 app。

SwiftUI 是一种创新、简洁的编程方式,通过 Swift 的强大功能,在所有 Apple 平台上构建用户界面。借助它,您只需一套工具和 API,即可创建面向任何 Apple 设备的用户界面。SwiftUI 采用简单易懂、编写方式自然的声明式 Swift 语法,可无缝支持新的 Xcode 设计工具,让您的代码与设计保持高度同步。SwiftUI 是真正原生的,因此您的 app 可以直接利用每一种平台经过验证的技术,美轮美奂地呈现 Apple 生态系统中为用户所钟爱的一切。

进一步了解

声明式语法。通过声明式 Swift 语法,清晰声明用户界面应具备的功能,让编写的代码变得更加简单。

设计工具。通过拖放操作来构造或编辑您的界面。利用弹出式检查器快速修改 UI 视觉元素。

原生支持所有 Apple 平台。您的 app 能够获得出色的原生性能,而且可以利用 Apple 平台经过验证的技术、控件和用户体验,为用户带来全面整合的体验。

实时模式。在一个或多个精确预览中,即时查看您的设计更改。将设计画布切换到实时模式,即可实时与在 Xcode 中或已连接设备上运行的 app 进行交互。

将您的 iPad App 带入 Mac

借助 Xcode,轻松地将现有的 iPad app 转换为原生 Mac app,由此遥遥领先。您的 Mac 和 iPad app 共用相同的项目和源代码,因此您所做的任何更改都可转化到这两个平台中。您新创建的 Mac app 会以原生方式运行,使用与专为 Mac 构建的 app 相同的框架、资源,甚至运行时环境。

进一步了解

Swift 和 Swift 软件包

Swift 5 现在直接内建于所有 Apple 平台,Swift 的二进制接口也在稳步推进。随着 Swift 不断发展,您的 app 将变得更小、下载更快,但一如既往地正常工作。

Swift 软件包已全面整合到 Xcode 11 中,让您可以在面向各种 Apple 平台的 app 中非常轻松地使用这些软件包。只需添加新的软件包依赖项即可将外部软件包添加到您的项目中,然后从 GitHub、Bitbucket、GitLab 或您自己的代码主机克隆软件包。Xcode 会检查软件包依赖项,并直接在导航器中显示您使用的所有软件包。

您也可以轻松地创建自己的软件包,将它们用于以您的代码为基础的项目,或与全世界分享。您在这些软件包中放入的源代码将构建到依赖它们的 app 中,并且支持所有 Apple 平台。软件包中的代码仍然能够通过源代码管理来轻松调试、测试和使用。

进一步了解

适用于 iPhone 和 iPad 的深色模式

深色模式已经与 iOS 系统全面整合,而且 Xcode 11 为您提供了强大的工具,让您的 app 可以轻松支持这一模式。在 Interface Builder 中,您可以在浅色和深色之间快速切换设计和预览;而在 SwiftUI 中,您可以预览这两种模式,甚至可以并排显示。在素材目录中,您可以将素材资源和指定的颜色标记为浅色和深色变体版本。调试过程中,您还可以开关 app 的深色模式。这一切全都可以通过仅应用到您 app 的 Xcode 控件实现,无需更改您的系统设置。

进一步了解深色模式 (英文)

您的编辑器,您的布局

无论您偏好单一编辑器,还是喜欢将窗口划分为多个精准排列的面板,Xcode 11 都能满足您的需求,让您既能全面掌控代码区域,又能分割任何编辑器面板。编辑器也可以显示 SwiftUI 预览、Playground 实时视图,以及各式各样的助理工具。如果需要专注处理一个文件,您可以通过点按按钮来最大化面板,以及精确返回到之前所在的位置。新的迷你地图边栏中会显示已打开文件的缩略图,内含能轻松跳转到准确位置的高亮显示部分。

描述性注释采用粗斜体显示并内嵌于代码中,让您的代码比以往更加美观明了。通过会随着您键入而更新的比较视图,您甚至可以检查当前源代码版本与以前版本之间的区别。

深度测试

更新的“设备”窗口可让您模拟用户的环境,例如在酷热环境或慢速网络中运行的 app 状态。通过 Xcode 11 中的测试计划,您可以轻松地让许多测试和分析步骤自动化,而且全部以并行方式运行。例如,您可以选择多个具有冲突构建设置的清理工具,Xcode 就为您运行所有测试并自动构建您需要的所有版本。

现在可以通过 API 将屏幕快照保存到生成的套装,在 UI 测试过程中轻松自动截取屏幕快照。与本地化 UI 测试相结合,您可以轻松截取需要提交到 App Store 或向本地化团队展示的所有屏幕快照。

现在 Xcode Server 和其他持续整合工具有了更好的支持,您可以轻松而高效地在数百种用户场景中持续测试您的 app。