一位拥有近二十年经验的 macOS/iOS 开发者分享了他尝试使用纯原生技术构建支持 Markdown 的 AI 聊天应用的失败经历。起初,为了追求极致性能,开发者坚持使用 SwiftUI 和 Swift 构建,但在实现全文档文本选择时遭遇了设计上的限制。随后,尝试引入 NSTextView 和 TextKit 2,结果在处理 AI 模型流式输出的文本流时出现了严重的 CPU 峰值和性能瓶颈。即便完全放弃 SwiftUI 转向底层的 AppKit,仍面临着集合视图单元格闪烁、文本交互逻辑需手动实现以及无障碍功能缺失等问题。相比之下,开发者最后尝试使用 Electron 和 WebKit 技术栈,却发现文本渲染、排版美观度、macOS 系统集成以及 Git 差异对比等功能不仅能完美运行,其性能甚至优于投入数月时间优化的原生代码。文章指出,在大模型时代,聊天应用和富文本处理已成为核心交互模式,Web 技术栈在处理复杂排版和流式内容方面具有原生框架难以比拟的优势。
事件分析
💡 核心观点:在处理 AI 聊天与复杂富文本场景时,Web 技术栈凭借成熟的渲染能力已超越原生框架,成为实现高性能交互的最优解。
原文链接:Hacker News





