惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
阮一峰的网络日志
阮一峰的网络日志
G
Google Developers Blog
J
Java Code Geeks
Blog — PlanetScale
Blog — PlanetScale
大猫的无限游戏
大猫的无限游戏
云风的 BLOG
云风的 BLOG
Vercel News
Vercel News
L
LangChain Blog
Hugging Face - Blog
Hugging Face - Blog
T
The Blog of Author Tim Ferriss
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Stack Overflow Blog
Stack Overflow Blog
P
Proofpoint News Feed
腾讯CDC
博客园_首页
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
M
MIT News - Artificial intelligence
WordPress大学
WordPress大学
D
DataBreaches.Net
Microsoft Security Blog
Microsoft Security Blog
有赞技术团队
有赞技术团队
博客园 - 叶小钗

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
WWDC 2023 技术分析报告:含 visionOS、SwiftData 等 - 少数派
2023-06-06 · via 少数派

本文我讲着重关注全平台,包括 visionOS 1, iOS 17,iPad OS 17,watchOS 10 等操作系统的最新特性。本文主要从开发者角度,解读这次 WWDC 中值得关注的技术内容。

今天开屏,Apple 用吹泡泡的人🫧 致敬开发者,这群敢于梦想,充满创造力的人们。刚好赶上 WWDC 开发者的节日,我们独立开发的 AI 记录应用 心光 App 也将于近期支持 iOS 17 ,应用众多特性本次发布会中提到的特性,欢迎体验。

关于 visionOS

先说下大家关注的,visionOS 提出了新概念,操作逻辑的是「窗口、体和空间」。

用户首先进入 visionOS 中的后:默认情况下,用户的视觉出现在 Shared Space,也是公共空间中,此时布局类似于桌面,用户拥有众多桌面视图中的一个。当用户视觉注意某个窗口,并且捏和确认视图后,画面会从平面转入立体,也就是从 Windows 进入 Volumes。

所有的底层,和 iOS App 一致,由 SwiftUI,RealityKit 和 ARKit 三个层级构成。

若你想让你的 UI 自动从 2D 页面,转换为 3D 页面,目前的方法是在 Xcode 中重新编译即可。在 visionOS 中,我们可以深度使用诸如材料,透明度,关注点等特性,来调节眼睛在 UI 中聚焦时 UI 的反馈。SwiftUI 诸如深度等修改器,负责在 3D 界面的深度。

自动视觉聚焦:在 RealityKit 在渲染过程中,会和 PS VR 类似,关注于重点内容聚焦。其光源特点也会继承当前外部环境的特色,支持 Material X 的各类纹理材质。

Xcode Canvas 目前完全支持 Canvas AR 预览了,也可以完全模拟 Vision Pro 设备的各种操作。只需要进入 Xcode 后,使用 Vision Pro 作为目标对象即可。

全新的 Reality Composer Pro App,是更偏向娱乐性质 Reality Composer 的升级版。可以自己调节 Shader,并且直接在 Vision Pro 中进行预览。下图所示,是多个 Nodes 点的渲染管线,在 Reality Composer Pro 也得到了支持,从 Maya 等建模软件中过来的小伙伴会对此比较熟悉。

Swift 编程语言更新

全新的 Macros 能帮助开发者延展 Swift 本身的语言特性。开发者可以用 Macros 来做诸如自定义 Codable 等模块,它也可以集成进入 Swift Package 中。Swift 语言同时直接支持了和 C++ 的链接,这个桥接是完全原生的,几乎不会有性能损失。

SwiftUI 特性更新

全新的 iPad 版本 Final Cut Pro 和 Logic Pro 全部都是用 SwiftUI 系的,今年新增了如下的能力。诸如动画 SF 图标、图表支持滑动、手势滑动速率等非常棒的功能。Animation Phase 能力许开发者进行不同状态间进行自动动画,只需要增加几个修改器,就能实现复杂动画啦,包括关键帧支持。关键帧甚至可以用在 Maps 等视图。

数据流动也进行了更新,今年的更新把重点放在了 @State@Environment 上,其它的都用 Macro 解决了。这点可以大幅度了减轻我们在代码中,对于 EnvironmentState 和 StateObject 的使用。

全新的 Swift Data

看到新的数据系统的时候,忍不住感慨太强了,再也不用自己定义数据库,只需要一个 @Model 关键词即可,十分震撼。我们已经告别了复杂数据流,配合自定义 Xcode 数据库模型的时代。这些能力,也是基于 Swift Macros 在做,复杂的结构被大幅简化。我会在接下来报名的 Lab 中,深度跟进这部分内容。

WidgetKit、AppIntents、TipKit

本次更新的 WidgetKit 能力扩展至多个平台,无论是 Mac 还是手表。Widget 本身终于不再是一个简单的视图,而是能执行一些操作了。新的架构本身的操作完全在 Widget 执行,通过合理架构实现。如下图所示,Widget 本身支持视图动画,直接在 Xcode Canvas 中预览。

用于 App 智能化,意图管理的新版的 AppIntent 代码更简洁,同时可以用 Siri 来进行互动。

全新的 TipKit 框架,从零到一解决了用户指导的问题,如果用户已经学过了,就可以不显示了。如下图所示,它支持各种显示方式,同时也能比较灵活的自定义,并用 iCloud 同步。用户在一台设备上点击过了的提醒,下一台设备不会重复。

游戏特性更新

本次重点进行了游戏并入 Mac 平台的流程更新。这里讲的不是非常多,但主要是敲接流程改进,对于正在做游戏的小伙伴,值得关注。我个人也很好奇目前 Unity 和 Xcode 的链接,这点在 Session 中会有对应讲解。

全新的 HDR API

在过去,设备支持 HDR 修改没有统一的方式,业界也没有标准方法。新的 API 现允许开发者深度定制,修改 HDR 图片信息。对于诸如想要支持 HDR 标准的图片 App,或者摄影摄像相关的 App 很值得考虑这个新特点。

watchOS 全部用 SwiftUI 重写

今年又是 SwiftUI 重度应用的大年,Apple 将 SwiftUI 完全应用在 watchOS 的各个角落。你可以看到诸如 NavigationSplitView 的应用,也用诸如半透明材质效果,右侧小边栏按钮,半透明 Tab 视图修改器等 .tabViewStyle(.verticalPage)

Preview 终于不需要复杂代码了

这部分估计过去是很多开发者的噩梦,无聊重复的代码,导致 Canvas 在重度开发过程中几乎被无视。现在复杂写法被缩减为这一句,就可以在 Canvas 预览,大幅提高可用度。

总结

总的来说,WWDC 2023 确实是我认为最近几年最令人惊喜的大会。

visionOS 带我们进入了全新的虚拟世界,同时与发展很多年的 SwiftUI 的集成本身,让编程变得更轻松愉快。

Swift 编程语言的更新、全新的 Swift Data 以及 WidgetKit、AppIntents、TipKit 的对我们开发者来说拥有很多重度减负,也解决了之前一些流程上的问题。 游戏特性更新和全新 HDR API 等更新,为特定领域的开发者提供了更多机会。

邀请大家体验阅读我们对于标签系统的重新思考,也祝大家创作愉快!