-
SwiftUI 小组实验室
参加我们的线上活动,与 Apple 工程师和设计师一起深入探索 WWDC26。在这个以 SwiftUI 为主题的活动中,你可以提出问题、获取建议,并实时关注围绕大会一周的相关重磅发布展开的精彩讨论。活动语言为英语。
章节
- 0:00:00 - 简介
- 0:01:03 - SwiftUI 团队是否期望我们采用某种特定的架构 (如 MVC、MVVM、VIPER、Clean Architecture 等),还是说 SwiftUI 是特意设计为架构无关的?
- 0:04:31 - @ViewBuilder 闭包和单独的视图结构体有什么区别?它们在性能方面各有哪些优缺点?
- 0:10:19 - 大家最近在 SwiftUI 中最常见到的反模式有哪些?
- 0:17:26 - 在 SwiftUI 中,哪一个概念是开发者需要花最长时间去理解的?你会如何解释它?
- 0:24:00 - 在 UIKit 中,单元格复用是滚动性能的基础。 在 SwiftUI 中,惰性 Stack 和网格是否足以应对无限滚动布局,还是说应该降级使用托管的 UICollectionView?
- 0:26:55 - 从 @ViewBuilder 到 @ContentBuilder 的变更看起来很棒——它是如何工作的?为什么它能提升类型检查的性能?
- 0:29:52 - 当你的团队遇到原因不明的过度更新问题时,实际的工作流程是怎样的?是使用新的 SwiftUI Instrument、Self._printChanges,还是其他方法? 为什么带有下划线?
- 0:34:18 - 随着 @ContentBuilder 编译功能的提升,还有必要继续使用 @ViewBuilder 吗?我们应该如何进行抉择?
- 0:35:26 - SwiftUI 属性包装器感觉就像是神秘的魔法。 如果我不能完全理解 @State 如何管理它的生命周期,我如何能安全地采用 Swift 并发?连接它们的心智模型是什么?
- 0:38:32 - 如果需要自定过渡效果,在 iOS 27 中实现导航的推荐方式是什么?是使用 SwiftUI,还是 UIKit 与 SwiftUI 搭配?
- 0:40:38 - 追踪 ScrollView 的滚动偏移量,以根据用户滚动距离显示特定视图元素的推荐方式是什么?
- 0:43:41 - 有没有办法构建类似于 LazyVStack 这样的自定惰性布局?
- 0:45:15 - 大型 SwiftUI App 中最终迥损害性能的最常见错误是什么?
- 0:48:39 - @Observable 属性会自动分配到正确的线程上吗,还是说我们应该显式地将 UI 引用的属性标记为 @MainActor?
- 0:53:28 - 在我们的多模块 App 中,我们从协议中返回 AnyView,以隐藏具体视图类型并避免跨模块依赖项。 是否存在一种不使用 AnyView 且更惯用的方式?
- 0:56:13 - 你能否解释一下 compositingGroup、geometryGroup 和 drawingGroup 在性能权衡 (速度和内存) 方面的区别吗?
资源
-
搜索此视频…
-