内容简介:6 月份是苹果用户和开发者社群非常活跃的时期,苹果几大新系统在 WWDC 发布后,果粉们都会纷纷讨论 iOS 13,iPadOS 和 macOS 10.15 等的新亮点,并发表自己的评价。而对于开发者来说,新的生态环境给他们带来的最大惊喜是什么呢?答案非常一致。从新面孔的苹果奖学金获得者到已经数度参加 WWDC 的资深开发者,对于“你看到的最激动人心的事情是什么?”这个问题,回答无疑都是看到了 SwiftUI 的发布。
SwiftUI值得开发者如此欣喜。
6 月份是苹果用户和开发者社群非常活跃的时期,苹果几大新系统在 WWDC 发布后,果粉们都会纷纷讨论 iOS 13,iPadOS 和 macOS 10.15 等的新亮点,并发表自己的评价。而对于开发者来说,新的生态环境给他们带来的最大惊喜是什么呢?答案非常一致。从新面孔的苹果奖学金获得者到已经数度参加 WWDC 的资深开发者,对于“你看到的最激动人心的事情是什么?”这个问题,回答无疑都是看到了 SwiftUI 的发布。
最好的工具
为什么 SwiftUI 对于开发者那么重要呢?原因其实很简单,因为新的 SwiftUI 框架利用了苹果自定义创建的 Swift 语言的特性,使开发人员更容易、更快地构建更好的用户界面代码,同时错误会更少,也能创造更多的功能。
也就是说,我们将可以把更少的精力花在创建常规交互元素的应用上,从而可以减少代码调试和维护的次数,以及使用如下功能:自动适应 iOS 和 macOS 的深色模式、支持新平台功能的催化剂项目(Project Catalyst)、先进的可访问性、动态类型、允许用户调整大小的文本、多语种的广泛本地化、优美流畅的动画、洁净的苹果 UI 和导航。
SwiftUI 让苹果开发者专注于打造自己的原创内容,同时可开发出更统一、更强大、外观更现代的软件,影响将是巨大的。
苹果在 WWDC14 上推出了新的 Swift 编程语言,该语言借鉴了多种流行语言的思想,形成了苹果所希望的「一种工业质量的编程语言同样应该具有表现力和趣味性」。因为创造 Swift 的初衷就是为了简洁、易于理解和调试,不仅对于 Java 和 c# 开发人员来说上手非常简单,而对于新 程序员 来说学习该代码通常比学习 Objective C 更容易。
在 WWDC16 上,苹果公司将为 iPad 推出了一款名为 Swift Playgrounds 的应用程序,旨在让学生和初学者更容易地掌握 Swift 学习编程的技能。苹果还发起了「人人都能编程」(Everyone Can Code)倡议,将操场推广为学习编程的工具,并发布了为期一年的 Swift 软件开发课程,名为「用 Swift 开发 App」(App development with Swift)。
Swift 代码可为 macOS 创建 AppKit 项目,也可用于为 iPhone、iPad、Apple TV 和 Apple Watch 创建 UIKit 应用。在此之前,这些开发 API 是需要在 Swift 代码产生前构建,而现在新的 SwiftUI 可以直接搞定上述这些工作,大大简化该过程,加快跨平台 App 的用户界面布局工作。
交互独特性
SwiftUI 的目的是创造一种让开发人员「学习一次,就能在任何地方编写出合适代码」的工具。与 Swift 本身一样,SwiftUI 也是可视化的,允许程序员对 UI 进行布局,然后以适合于每种设备的方式调整 UI 在多个平台上的外观和工作方式。
虽然 Android、Java 和 Windows 10 都追求一个理想的代码,但 SwiftUI 遵循苹果独特的思维方式,那就是可以让每个产品的 OS 都能符合特定交互方式。例如,Apple Watch 不仅仅是你手腕上的一个小 iPhone,它运行的 watchOS 交互被设计为简短和便于查看式,用户的手势很简单,所呈现的数据简短而有意义,它通过数字表冠提供了独特的输入机制,这在可穿戴设备上很有意义,但在平板电脑或台式电脑上就不一样了。
今年,苹果进一步扩大了 iPhone 和 iPad 在 OS 层面的差异性。新的 iPadOS 交互风格将明显不同于手持 iPhone 或 iPod touch,它将支持应用程序的拖放交互、屏幕分割和滑动功能。类似地,Mac 用户通常是固定坐着使用,屏幕更大,并附带物理键盘和鼠标,更容易处理与重叠窗口、多个空格、甚至可以跨多个显示器扩展屏幕。
苹果还宣布了 Project Catalyst 的跨平台并行计划,使现有的 iPad 应用能够适应 Mac 电脑的本地工作,并充分利用其复杂的交互模式。SwiftUI 提供了一种构建 UI 代码的替代方案,可以重用 UI 代码,并对其进行调整,以快速地创建跨苹果平台运行的应用。
图形化语言
从最初的麦金塔电脑问世以来,苹果一直致力于使用动画来强化用户界面的想法,增强用户体验,并开创了可访问性的先河,而且通过为有视觉、听觉或运动障碍的人提供输入数据和理解响应的新方法,确保任何人都可以使用它的计算工具。包括先进的本地化工作,也给不同地域使用苹果产品的人带来优秀体验。
然而,这些特性都需要第三方开发人员进行大量工作,以确保他们的 App 具有与原生系统相同的动画、可访问和本地化特性。通过 SwiftUI,苹果正在帮助开发人员尽可能轻松地支持这些功能。在许多情况下,SwiftUI 会自动完成这些工作。
使用 SwiftUI 的可视化语法,开发人员只需声明他们的用户界面应该做什么,在编写上类似于 web 上的 JavaScript,这有助于创建简单、易于阅读、易于维护的代码。SwiftUI 的可视化风格还支持复杂的动画,可以通过从现成的效果集合中进行选择,并轻松地将其添加到控件中,系统就能自动处理所有需要显示平滑的 UI 动画了。
在设计画布上,图形化编辑与编辑器中的代码同步。当你键入代码时,代码会立即显示在图形预览中。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 则可以免费继承这些框架。
此外,SwiftUI 和 Swift 还可以让更多的用户更容易进入到编程领域,包括那些对创作 App 有想法但缺乏相关编程技能的人。通过使其开发 工具 更容易被学习和使用,苹果可以继续在全球范围内扩展开发者基础,为他们提供最好的平台来展示和销售作品,当然这也是广大苹果用户们喜闻乐见的成果。
欢迎关注威锋网官方微信:威锋网(weiphone_2007) 汇聚最新Apple动态,精选最热科技资讯。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Chrome 84 稳定版正式发布,带来许多面向开发者的更新
- Dart 2.10 发布,带来新的 Dart 开发者工具
- Python 核心开发者:Python 之父的退休没有带来影响
- Cocos-BCX 测试网来袭:带来新盈利模式,并推出开发者计划
- Cocos-BCX 测试网来袭:带来新盈利模式并推出开发者计划
- is 语法带来的误读
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
技术领导之路(中英文对照)
Gerald M.Weinberg / 余晟 / 电子工业出版社 / 2009-12 / 69.00元
《技术领导之路:全面解决问题的途径(中英文对照)》内容简介:搞定技术问题并不简单,但与人打交到也并非易事。作为一个技术专家,你是否在走上管理岗位时遇到了各种不适“症状”?《技术领导之路:解决问题的有机方法》一书将帮助你成为一个成功的解决问题的领导者。书中温伯格从一个反思者的角度阐述了要成为一个成功的解决问题的领导者必备的3个技能——MOI,即激励(Motivation)、组织(Organizati......一起来看看 《技术领导之路(中英文对照)》 这本书的介绍吧!