我的杭州 “冒险” 之旅

肘子的 Swift 周报 #041

2024 年 7 月 22 日

上周,我踏上了一趟前往杭州的 “冒险” 之旅。今年四月在北京参加 Let's VisionOS 活动时,我注意到一个大男孩 Ryan Zhu 一直跟在活动组委会人员身边帮忙做些杂务。交流后我惊讶地得知,他今年才 17 岁,还在上高二。Rya...

2024 年 7 月 24 日
几个常见的关于 SwiftUI 的误解

本文旨在探讨几个关于 SwiftUI 的常见误解,以帮助开发者更好地理解和运用 SwiftUI。我们将剖析这些误区,包括对 SwiftUI 学习难度的认知、跨平台开发的期望、框架功能的范畴、以及代码量的误解等。通过澄清这些观念,我们希望能为 SwiftUI 开发者提供更清晰的学习方向和使用策略。

2024 年 7 月 17 日
使用 SwiftUI 开发无限四向滚动分页组件

SwiftUI 的出现为苹果生态的开发带来了革命性的变化,但在面对某些复杂需求时,它仍然存在一些挑战。最近,我开发了一个名为 Infinite4Pager 的组件,它支持无限四向滚动分页功能。本文中我们将分析实现过程中的关键思路,讨论需要特别注意的事项,并坦诚地审视 SwiftUI 在应对这类场景时的不足之处。通过这个案例,我们不仅能学习到具体的技术实现,还能更好地理解如何在 SwiftUI 的框架下突破常规,创造性地解决问题。

2024 年 7 月 12 日
多包单库中的 String Catalog 自动合并技巧

By Luca Ban

在 WWDC23 上,Swift 引入了一种用于 Swift 应用和包的国际化(i18n)新方式,即字符串目录(String Catalogs)。本指南涵盖了在新项目中开始使用字符串目录的基础知识:WWDC23 String Catalogs。然而,它没有涉及在单一代码库中包含多个 Swift 包的用例(并且没有示例项目)。在本文中,我们将探讨如何设置你的单库,使每个 Swift 包都可以拥有自己的字符串目录,并在构建主应用时自动合并为一个目录,而无需费力!

2024 年 7 月 10 日
List 还是 LazyVStack:SwiftUI 中的惰性容器选择

在 SwiftUI 的世界里,List 和 LazyVStack 作为两大核心惰性容器,为开发者展示大量数据提供了强大的支持。然而,它们在某些场景下表现相似,常常让开发者在选择时感到困惑。本文旨在剖析这两个组件的特点、优势,以帮助你更好地作出选择。

2024 年 7 月 3 日
Swifter and Swifty:掌握 Swift Testing 框架

自 Swift 语言诞生以来,XCTest 一直是绝大多数 Swift 开发者的首选测试框架。然而,由于其深植于 Objective-C 的根基,API 设计大量沿袭了该语言的传统,无法充分体现 Swift 的现代编程最佳实践。在某些方面,这甚至成为了发展的障碍。为了克服这些限制,苹果在 WWDC 2024 上正式介绍了由社区开发的 Swift Testing —— 一个专门为 Swift 语言设计的全新测试框架。这个框架已被集成到 Xcode 16 中,并被定位为官方首选的测试工具。在本文中,我们将深入探讨 Swift Testing 框架的特性、用法和其独特之处,分析它如何帮助开发者以更快(Swifter)的方式编写出更符合 Swift 编程习惯(Swifty)的测试代码。

2024 年 6 月 26 日
SwiftUI 滚动控制 API 的发展历程与 WWDC 2024 的新亮点

在 WWDC 2024 中,苹果再次为 SwiftUI 的 ScrollView 组件带来了一系列令人瞩目的新 API。这些新功能不仅增强了开发者对滚动行为的控制能力,也反映了 SwiftUI 框架设计理念的持续演进。本文将探讨这些最新的滚动控制 API,并回顾从 SwiftUI 诞生至今与滚动控制相关的所有重要 API 的发展历程。通过这个微观视角,我们将揭示 SwiftUI 在过去几年中设计风格的变迁,以及背后蕴含的宏观设计趋势。

2024 年 6 月 19 日
用 TextRenderer 构建绚丽动感的文字效果

Text 组件在 SwiftUI 应用中极为常见。过去几年里,尽管苹果不断扩展其功能,开发者仍期待能更深层次地控制这一组件。在 WWDC 2024 上,SwiftUI 推出了 TextRenderer 协议,赋予开发者调整 Text 组件渲染表现的新能力,使得实现许多先前难以想象的效果成为可能。本文将深入探讨这一新增功能。

2024 年 6 月 17 日
WWDC 2024 观后感

WWDC 2024 已圆满落幕。在这一周里,苹果向开发者们展示了一系列对未来将产生深远意义的新特性和功能。我将对几个感触较深的方面分享一下看法和感受,回顾这次 WWDC 的亮点。

每周一晚,与全球开发者同步,掌握 Swift & SwiftUI 最新动向
可随时退订,干净无 spam