|
最好的工具 为什么 SwiftUI 对于开发者那么重要呢?原因其实很简单,因为新的 SwiftUI 框架利用了苹果自定义创建的 Swift 语言的特点,使开发人员更容易、更快地构建更好的用户界面代码,同时错误会更少,也能创造更多的功能。 也就是说,我们将可以把更少的精力花在创建常规交互元素的使用上,从而可以减少代码调试和维护的次数,以及运用如下功能:自动适应 苹果iOS 和 macOS 的深色模式、支持新平台功能的催化剂项目(Project Catalyst)、先进的可访问性、动态类型、允许用户调整大小的文本、多语种的广泛本地化、优美流畅的动画、洁净的苹果 UI 和导航。
苹果在 WWDC14 上推出了新的 Swift 编程语言,该语言借鉴了多种流行语言的思想,形成了苹果所希望的「一种工业质量的编程语言同样应该具有表现力和趣味性」。因为创造 Swift 的初衷就是为了简洁、易于理解和调试,不仅对于 Java 和 c# 开发人员来说上手非常简单,而对于新程序员来说学习该代码通常比学习 Objective C 更容易。 在 WWDC16 上,苹果公司将为 iPad 推出了一款名为 Swift Playgrounds 的使用程序,旨在让学生和初学者更容易地掌握 Swift 学习编程的技能。苹果还发起了「人人都能编程」(Everyone Can Code)倡议,将操场推广为学习编程的工具,并发布了为期一年的 Swift 软件开发课程,名为「用 Swift 开发 App」(App development with Swift)。
交互独特点 SwiftUI 的目的是创造一种让开发人员「学习一次,就能在任何地方编写出合适代码」的工具。与 Swift 本身一样,SwiftUI 也是可视化的,允许程序员对 UI 进行布局,然后以适合于每种设备的方式调整 UI 在多个平台上的外观和工作方式。 虽然 Android、Java 和 Win 10 都追求一个理想的代码,但 SwiftUI 遵循苹果独特的思维方式,那就是可以让每个产品的 OS 都能符合特定交互方式。例如,Apple Watch 不仅仅是你手腕上的一个小 iPhone,它运行的 watchOS 交互被规划为简短和便于查看式,用户的手势很简单,所呈现的数据简短而有意义,它通过数字表冠提供了独特的输入机制,这在可穿戴设备上很有意义,但在平板电脑或台式电脑上就不一样了。 今年,苹果进一步扩大了 iPhone 和 iPad 在 OS 层面的不一样性。新的 iPadOS 交互风格将显著不一样于手持 iPhone 或 iPod touch,它将支持使用程序的拖放交互、屏幕分割和滑动功能。相似地,Mac 用户通常是固定坐着运用,屏幕更大,并附带物理键盘和鼠标,更容易处理与重叠窗口、多个空格、甚至可以跨多个显示器扩展屏幕。
图形化语言 从最初的麦金塔电脑问世以来,苹果一直致力于运用动画来强化用户界面的想法,增强用户体验,并开创了可访问性的先河,而且通过为有视觉、听觉或运动障碍的人提供输入数据和理解响应的新方式,确保任何人都可以运用它的计算工具。包括先进的本地化工作,也给不一样地域运用苹果产品的人带来优秀体验。 然而,这些特点都需要第三方开发人员进行大量工作,以确保他们的 App 具有与原生系统相同的动画、可访问和本地化特点。通过 SwiftUI,苹果正在帮助开发人员尽可能轻松地支持这些功能。在许多情况下,SwiftUI 会自动完成这些工作。
在规划画布上,图形化编辑与编辑器中的代码同步。当你键入代码时,代码会立即显示在图形预览中。Xcode 会立即重新编译更改,并将其插入到使用程序的运行版本中,该版本在任何时候都是可见和可编辑的。 你还可以创建多个 SwiftUI 视图预览,以显示示例数据,并配置用户可能设置的变体,如深色模式、较大的动态类型字体或外语本地化,预览还可以在任何虚拟设备和任何方向上显示 UI。 苹果还为开发者们创造了一系列教程演示如何构建一个 SwiftUI iPhone 使用程序,并一步一步解释如何创建一个新的 Xcode 项目、文本布局和视图运用栈,如何自定义图像视图,如何运用 UIKit SwiftUI 视图,如何构建列表和导航,如何处理用户输入,如何画出路径和形状,如何实现动画视图和转换,然后如何组成更复杂的接口,如何连接 UI 控件和 UIKit 的界面。 体验大优化 那么 SwiftUI 将为用户做些什么呢?现在,SwiftUI 代码只适用于苹果的新操作系统:macOS Catalina 10.15、苹果iOS 13、iPadOS 13、tvOS 13 和 watchOS 6。这意味着普通用户要到 9 月左右才能看到 SwiftUI 的使用程序,而且,由于 App 的开发一般需要提前做系统适配,所以我们看到 SwiftUI 规划的使用问世可能需要一些时间。 然而,正如 Swift 帮助苹果开发者变得更有效率一样,SwiftUI 也是苹果创造更熟练、更有能力的程序员的长期策略。这不仅有助于提升 App 质量,还应该有助于让 苹果iOS 开发者更容易地将他们的工作带到苹果平台上。正如「催化剂」项目承诺将帮助将 iPad 使用程序引入 Mac电 脑一样,SwiftUI 也将使 苹果iOS 使用更容易被移植到 iPad、Apple TV 和 Apple Watch 并进行适当的优化,与各自的平台原生完成配套,以提供尽可能最好的体验。 SwiftUI 还承诺将改善使用的外观,使开发人员更容易整合流畅的动画,更好地支持全局本地化,支持深色模式和动态文本,以及帮助残疾用户的辅助功能等等。SwiftUI 在改进苹果开发平台方面的自动特点也暗示了未来的功能:苹果对其框架进行改进,第三方 App 则可以免费继承这些框架。
|
发表评论