关于 ios-swift-development
面向 iOS 开发者的 Swift 原生应用开发技能,涵盖 SwiftUI、Combine 和 async/await,并提供 MVVM、网络服务与视图实现指南。
主要功能
- 01Swift 原生 iOS 应用开发
- 02SwiftUI 界面与视图指南
- 03Combine 和 async/await 模式
- 04MVVM 架构参考
- 05URLSession 网络服务指南
适用场景
- 01开发原生 iOS 应用
- 02构建声明式 SwiftUI 界面
- 03实现异步操作与网络服务
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill ios-swift-development安装后在 Claude Code 中输入/ios-swift-development确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/mvvm-architecture-setup.mdnetwork-service-with-urlsession.mdswiftui-views.mdscripts/validate-api.shtemplates/api-scaffold.yaml详细介绍
iOS Swift 开发
目录
概述
使用 Swift 构建高性能原生 iOS 应用,并采用 SwiftUI、Combine 和 async/await 模式等现代框架。
适用场景
- 创建性能出色的原生 iOS 应用
- 利用 iOS 特有的功能和 API
- 构建需要与硬件紧密集成的应用
- 使用 SwiftUI 进行声明式 UI 开发
- 实现复杂的动画和过渡效果
快速入门
最简可运行示例:
import Foundation
import Combine
struct User: Codable, Identifiable {
let id: UUID
var name: String
var email: String
}
class UserViewModel: ObservableObject {
@Published var user: User?
@Published var isLoading = false
@Published var errorMessage: String?
private let networkService: NetworkService
init(networkService: NetworkService = .shared) {
self.networkService = networkService
}
@MainActor
func fetchUser(id: UUID) async {
isLoading = true
errorMessage = nil
// ... (see reference guides for full implementation)
参考指南
references/ 目录中的详细实现:
| 指南 | 内容 |
|---|---|
| MVVM 架构设置 | MVVM 架构设置 |
| 使用 URLSession 的网络服务 | 使用 URLSession 的网络服务 |
| SwiftUI 视图 | SwiftUI 视图 |
最佳实践
✅ 应该做
- 使用 SwiftUI 进行现代 UI 开发
- 实现 MVVM 架构
- 使用 async/await 模式
- 将敏感数据存储在 Keychain 中
- 妥善处理错误
- 为 ViewModel 使用 @StateObject
- 正确验证 API 响应
- 使用 Core Data 实现持久化
- 在多个 iOS 版本上测试
- 使用依赖注入
- 遵循 Swift 风格指南
❌ 不要做
- 将令牌存储在 UserDefaults 中
- 在主线程上发起网络请求
- 使用已弃用的 UIKit 模式
- 忽视内存泄漏
- 跳过错误处理
- 使用强制解包(!)
- 在代码中存储密码
- 忽视无障碍功能
- 部署未经测试的代码
- 使用硬编码的 API URL
评论
支持 Markdown