ARTICLE · 软件编程

对标 Flutter 7 年,开发者发文炮轰苹果 SwiftUI:它至今仍像一个“长期测试版”

作者:CSDN 来源:CSDN 2026-08-04 16:13 29 分钟 7110 字
iOS 开发SwiftUI苹果生态UI 框架软件工程
一语总结

资深开发者 Yakov Manshin 深度评析 SwiftUI 发布七年来的表现,指出其在性能、布局可预测性及 API 稳定性方面的长期缺陷,并反思苹果软件开发文化的平庸化转向。

AI 总结

文章回顾了 SwiftUI 自 2019 年发布以来的发展历程。作者认为,尽管 SwiftUI 承载了统一 Apple 全平台开发体验的美好愿景,但七年后其表现仍像一个「长期测试版」。文章详细拆解了 SwiftUI 的几大痛点:一是数据流机制混乱,从 ObservedObject 到 Observation 框架的演进增加了预测视图更新的难度;二是布局系统极其脆弱且不可预测,开发者常被迫使用 GeometryReader 等手段手动计算,丧失了声明式优势;三是 API 稳定性差且功能不全,导致代码中充斥着大量的版本兼容判断;四是性能表现不及 UIKit 等原生框架。作者进一步指出,这反映了苹果从追求极致工艺到「够用就行」的文化转变,呼吁开发者关注长期维护成本与产品质量。

核心要点
  1. SwiftUI 的数据流机制缺乏透明度与可预测性。

    从最初的属性包装器到 Observation 框架,数据流设计不断变化且像个黑盒,导致视图更新频率难以控制,实现可预测行为变得极其困难。

  2. 布局系统过于脆弱,导致开发者失去对 UI 行为的精准控制。

    尺寸协商机制在复杂场景下表现不佳,开发者被迫频繁使用 GeometryReader 手动计算坐标,这违背了声明式 UI 的初衷并增加了代码复杂度。

  3. API 的频繁更替与向后兼容性缺失造成了「开发地狱」。

    许多基础功能(如图片缓存、滚动隐藏键盘)在早期版本缺失或 Bug 频出,迫使开发者维护多套适配层,替苹果承担了质量验证工作。

  4. SwiftUI 的现状折射出苹果软件开发文化向「平庸化」的转变。

    作者认为苹果正从早期对产品工艺的极致追求转向「大部分情况下能工作」的现代企业文化,导致第一方应用和系统组件的质量标准下降。

对标 Flutter 7 年,开发者发文炮轰苹果 SwiftUI:它至今仍像一个“长期测试版”

文章回顾了 SwiftUI 自 2019 年发布以来的发展历程。作者认为,尽管 SwiftUI 承载了统一 Apple 全平台开发体验的美好愿景,但七年后其表现仍像一个「长期测试版」。文章详细拆解了 SwiftUI 的几大痛点:一是数据流机制混乱,从 ObservedObject 到 Observation 框架的演进增加了预测视图更新的难度;二是布局系统极其脆弱且不可预测,开发者常被迫使用 GeometryReader 等手段手动计算,丧失了声明式优势;三是 API 稳定性差且功能不全,导致代码中充斥着大量的版本兼容判断;四是性能表现不及 UIKit 等原生框架。作者进一步指出,这反映了苹果从追求极致工艺到「够用就行」的文化转变,呼吁开发者关注长期维护成本与产品质量。

文章金句

"

到了 2026 年,SwiftUI 依然给许多开发者一种「长期测试版」的感觉。

"

一旦使用了 GeometryReader,你就已经失去了 SwiftUI 最核心的声明式优势。

"

学一次,学两遍,到处应用,处处调试。

"

SwiftUI 的故事,是一个关于平庸化和标准降低的故事。我们被要求用可预测的精确性,去交换一种虚假的便利。

"

降低质量标准是一种选择,而不是迫不得已的结果。我拒绝接受这种选择。