一个基于 LLM 的 iOS 开发工作流的实践例
记录一下看到的一个基于 LLM 的 iOS 开发环境搭建/工作流的一个不错的实践方案。
同时 Memo 一些有助于学习 iOS/SwiftUI 开发的一些资源。
基于 LLM 的开发环境搭建
支持 Apple Intelligence 的 macOS 会有一个内置的 Predictive code completion,会下载一个 2.5G 左右的本地模型,在没网的时候可以使用。


但比起这个本地模型,GitHub Copilot 为 Xcode 提供的官方插件更强大,使用起来除了补全,也有一个 Chat 栏,可以很方便地指定 Xcode 中正在打开的一些文件进行提问,也支持 Claude 等最新模型,不过目前还没提供和 VS Code 中类似的 Agents 功能。
但习惯了 Cursor 的 Agents 模式后,仅仅通过 Xcode 中的 Chat 辅助开发已经有些不够用了,好在 Cursor/VS Code 也通过一些插件对 SwiftUI 提供了一些支持:
所以主要目标,让 iOS 开发在不开启 Xcode 下也能正常导入包以及进行编译。
关键系统级依赖:
Cursor / VSCode 插件:
- Swift
- SwiftPad
- 使用 Cursor / VSCode 打开项目目录,需要与
xx.xcodeproj同级 Cmd/Ctrl + Shift + P调出命令面板,输入/检索Sweetpad: Generate Build Server Config,选择当前项目- 等待当前项目根目录下
buildServer.json文件生成
在项目对应的 schema 上点击 build,选中模拟型或是已连接的实机,会自动编译并运行,就可以实现完全不打开 Xcode 也能进行开发了。
现在再点开所有的代码文件,也不会再出现 imports 错误等一片红的报错,所以再使用 Cursor/Roo Code Agent 进行开发时,也会更准确。
基于 Roo Code + Cursor 的开发工作流 (参考 pseudoyu)
在 iOS 开发过程中,或许是因为上下文长度和模型语料的原因,发现通过 Roo Code 插件配合 gemini-2.5-pro-preview-05-06 模型在一些更大的功能模块拆分、重构等场景下效果显著好于前者(当然,按量计费 token 消耗也夸张很多)。

所以目前的工作流是通过采用 roocode-workspace 这个项目先让模型理解项目结构并生成 Memory Bank 文件供后续使用;在一些大功能的开发上尽可能多地提供官方文档、博客和自己的 prompts 让 Roo Code 进行开发,同时自己修复一些逻辑性的 bug。
最后如果有一些比较复杂的报错或 lint error,可以拆分成小的任务单元使用 Cursor + Claude 3.7 Sonnet Thinking 进行修复,虽然是两倍速率消耗,但生成代码的可用性还是更强一些。
其他可以学习的资源
- Apple - SwiftUI,官方文档。
- Apple - SwiftUI Tutorials,Apple 官方也有一个交互式的 SwiftUI 教程,关于布局、动画相关的相关概念会更加形象。
- SwiftUI 新手入門課程,ChaoCode 的入门教程,简洁易懂,看完后基本上就能做一些小项目了。
- CS193p - Developing Apps for iOS,Standford 经典 iOS 开发课程,2023 年的课程也转向了 SwiftUI,质量高,能更多理解 MVVM 设计模式和一些更底层的概念。
- 肘子的 Swift 记事本,有很多精品的文章,关于 Swift Data 最佳实践等
- 13 的 iOS Developer+,平时有看 Newsletter,他也正在连载 SwiftUI 的教程。
推荐阅读
致谢:
一个基于 LLM 的 iOS 开发工作流的实践例


