WWDC26 Platforms State of the Union
每年 WWDC,Keynote 是給一般用戶看的,Platforms State of the Union 才是給開發者看的。
今年的基調很務實:沒有顛覆性的新 API,而是把過去幾年堆疊的東西清理乾淨、跑快一點、用起來更順。有人說像 Snow Leopard 年,我覺得是貼切的比喻。
以下是對我來說最值得關注的幾件事。
🐦 Swift 6.4
語言層面沒有大破壞,但幾個小改動很實用:
async可以用在defer裡:之前要用 defer 做 cleanup 但 cleanup 本身是 async 的,只能繞路。現在直接支援。anyAppleOS可用性屬性:以前判斷「所有 Apple 平台」要寫#if os(iOS) || os(macOS) || os(watchOS) || ...,現在一個anyAppleOS搞定。- 型別檢查錯誤訊息改善:複雜 expression 超時的問題改善了,錯誤訊息也更容易看懂。
🎨 Liquid Glass
iOS 27 最明顯的視覺變化。毛玻璃效果全面升級,深度感更強,sidebar 延伸到邊緣,icon 顏色回來了。
開發者要注意的是:這不是純 CSS 層面的改動,UIKit 和 SwiftUI 的元件都有相應更新。如果你的 App 有自訂 UI 元件,適配的工作量值得提前評估。
🛠️ SwiftUI 更新
這次 SwiftUI 的更新比較散,但有幾個值得關注:
新互動 API
.reorderable():拖曳重新排序,不用自己實作onMove那套.swipeActions():可以用在任何容器,不只是List
效能改善
- nested stack 佈局速度提升 2 倍
@State懶初始化:以前 View init 時會建立臨時 ViewModel 再丟掉,現在不會AsyncImage自動 HTTP cache:終於不用自己包一層了
架構統一
SwiftUI、AppKit、UIKit 底層架構統一。對於像我這樣混用 UIHostingController 的架構,這是好消息——不同層之間的行為應該更一致。
🔧 Xcode 27
Device Hub 取代 Simulator,模擬器和實體裝置統一管理,可以動態切換暗黑模式、字體大小、測試各種環境,比以前方便很多。
主題系統 現在可以每個 project 設定不同配色,Emerald、Neon Noir、Coral Reef… 算是讓人分神的功能,但好看。
Agentic Coding 是這次最大的噱頭,支援 Anthropic、OpenAI、Google,也有 MCP 工具支援。實際用起來如何,等我試完再說。
🤖 Apple Intelligence
Foundation Models Framework 開放給開發者,可以呼叫 Apple 自家模型,也支援 Claude、Gemini 等第三方模型。Core AI 則讓你在裝置上跑自訂模型。
這塊我目前還沒有深入研究的計畫,但如果未來有機會在 App 裡整合,會再寫。
Platforms State of the Union — WWDC26 Session 102
本文使用 Claude 共同完成