从 6 月中开始,我所在的城市也迎来了罕见的高温天气。尽管相较于动辄 35-40 多摄氏度的其他地区,30-31 摄氏度在数字上看起来并不夸张,但对于习惯了 20 几度的我来说,这种温度已经很难熬了。
与高温相伴的还有一些奇怪的天象。6 月 19 日,大连上空出现了一种罕见的云——糙面云。天空呈现出强烈的压迫感,给人一种”末世”将近的错觉,幸好仅持续了半个小时。几天前的夜间又出现了高频闪电现象。一夜之间,据气象部门设备检测共发生了 7649 次闪电。我当时看向窗外的感觉就像有人在用氩弧焊进行焊接,整夜不停。有趣的是,尽管闪电极多,却几乎听不到雷声。
这些局部现象其实反映了全球性的趋势。至少从最近两个月的天气表现来看,今年仍会是气温极高的一年。全球很多地方的气温从春季开始就在不断刷新着纪录。从气象历史的角度看,气候带迁移本是一个正常的周期性趋势,但这种变化通常以百年、千年为尺度。而现在的发展速度远超理论上的自然演进——已经缩短到以几十年为单位了。
工业革命以来,大气中二氧化碳浓度急剧上升,目前的平均水平为过去至少 70 万年内所未见。几乎可以肯定,人类活动改变并加速了气候变化的自然进程。
人类文明要进步、要发展,就需要更多的创造和活动,而这些又势必会改变延续已久的生态平衡。在地球的演化史上,气候发生巨大而剧烈的变化并不罕见,地球总能用时间来抹平这些创伤,让一切恢复如初。只是,当这一切归于平静之时,人类是否还会是今天的模样呢?
BTW:上周周报的邮件订阅人数已经突破了 4000 人,感谢各位读者的支持 🙏。
原创
与 AI 共舞:我的 Claude Code 一月谈
转眼间,我使用 Claude Code 已经整整一个月了。这段时间里,它迅速成为了开发者们的新宠,关于 Claude Code 的讨论充斥着我的社交媒体时间线。最近有网友在 Discord 上问我对 Claude Code 的看法,正好借这个机会分享一下这段时间的使用感受,以及过去两年中 AI 为我的开发工作带来的便利与思考。
近期推荐
深入 Attribute Graph
在 SwiftUI 中,Attribute Graph 既重要又神秘。它是 SwiftUI 的核心运行时机制之一,用于追踪视图状态和依赖,驱动高效、最小化的 UI 更新。Chris Eidhof 在这段视频(附文字稿)里分享了他对其的洞察,并推荐了相关资料和工具,帮助开发者深入探索 SwiftUI 的内部原理。
用 AlarmKit 实现倒计时定时器 (Schedule a Countdown Timer with AlarmKit)
在 WWDC 2025,苹果发布了开发者期待已久的 AlarmKit,支持创建一次性闹钟、每周重复闹钟和即时启动的倒计时计时器。与 UserNotifications
在静音或专注模式下“悄无声息”不同,AlarmKit 的警报能突破限制,在关键时刻响起并显示横幅。在本文中,Natalia Panferova 详解了其 API 的使用方法,并演示了如何在主应用、Widget 和 Live Activity 等场景下进行配置。
为什么我不再“万物皆 struct” (Why I Stopped Using Structs for Everything in Swift)
Swift 社区一直推崇”优先使用 struct”的开发理念。值类型的不可变性和线程安全性看似完美,但在大型项目中,这种“struct 万能论”却暴露出不少问题。在这篇文章中,Koti Avula 结合实战经验,深入剖析了引用类型嵌入 struct 的陷阱、闭包捕获 self 的意外行为、以及关于性能的常见误区,并分享了他为何不再坚持“struct 至上”。
SwiftUI 如何实现渐进式模糊效果?
在 iOS 26,Apple Music 等系统应用引入了更细腻的渐变模糊效果。不过,这些功能尚未完全开放给开发者,也难以兼容较低系统版本。Justin Yan 在本文中分享了两种实现思路:
- 使用
UIVisualEffectView
复用系统级模糊渐变 - 结合 QuartzCore 和私有 CAFilter API 自定义渐进式模糊
虽然与 Liquid Glass 的原生效果仍有差距,但足以实现接近的视觉体验。
我用 Claude Code 独立开发了一款 macOS 应用 (I Shipped a macOS App Built Entirely by Claude Code)
在这篇极长文中,Indragie Karunaratne 分享了他用 Claude Code ,从 0 到 1 开发并上线一款原生 macOS 应用的经历。作者认为 Claude 的 Swift 6 和 SwiftUI 生成能力已相当实用,并通过 priming agent、自动化反馈循环等技巧,几乎实现了全部代码的自动编写(20,000 行代码中 95% 由 AI 生成)。文章还探讨了未来 IDE 形态和构建高质量自动化流程的思路,以及“人机协作式编程”的可能性。
Swift Android SDK 快速上手体验 (Using the Swift Android SDK)
虽然 Android Workgroup 已经成立,但在 Swift.org 上仍找不到关于安装和使用 Swift Android SDK 的官方指南。Abe White 在这段视频中演示了如何通过 skip
安装 Swift Android SDK,并在安卓设备上运行和测试 Swift 代码。
看完视频后,我马上按照 Abe 介绍的方法安装了 SDK,只用了很短时间就让我原本仅支持 macOS/Linux 的两个库顺利跑在 Android 上,过程非常顺畅。
工具
Objects2XLSX - 一键将数据集转换成 xlsx
一个类型安全、声明式的 Swift 库,让你用几行代码将对象数组导出为专业级 Excel (.xlsx) 文件。支持多工作表、完整样式、异步数据源和实时进度跟踪。
- ✅ Swift 6 并发支持
- ✅ KeyPath 映射 + 泛型 Sheet
- ✅ 多平台支持,macOS/Linux/Android
- ✅ 生成文件 100% Excel 兼容
Equatable Macro – 改善 SwiftUI 视图性能
SwiftUI 默认的 diff 机制在遇到闭包或需要忽略某些状态时容易误判,导致视图不必要的重绘。常见的优化方式是让视图符合 Equatable
,用自定义逻辑控制刷新,但手动实现既繁琐又容易遗漏。为此,Mirza Učanbarlić 受 Cal Stephens 在 Understanding and Improving SwiftUI Performance 一文中的思路启发,打造了 @Equatable 宏,自动生成 Equatable 实现,极大简化开发流程。