ios-swift について
iOS開発者向けのSwift開発スキルです。SwiftUI、UIKit、ネットワーク通信、データ永続化、Xcode設定、App Store提出の準備を扱います。
主な機能
- 01SwiftUIとUIKitの開発ガイド
- 02async/await、Combine、URLSessionによる通信
- 03Core Data、SwiftData、UserDefaultsによる永続化
- 04Xcodeの署名、機能、権限設定
- 05TestFlightとApp Storeへの提出手順
活用シーン
- 01iOSアプリの画面とナビゲーションの作成
- 02非同期ネットワークデータの読み込み
- 03署名、プッシュ通知、バックグラウンド機能の設定
- 04TestFlightでのアプリテスト
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ partme-ai/ full-stack-skills --skill ios-swiftインストール後、Claude Code で/ios-swiftを入力して読み込まれたか確認します。
同梱ファイルLICENSE.txt
詳細
このスキルを使用するタイミング
次のことをユーザーが希望する場合は、いつでもこのスキルを使用してください。
- SwiftUI または UIKit を使用して Swift で iOS アプリケーションを作成する
- ナビゲーション、ビューコントローラー、または SwiftUI のビューやモディファイアを実装する
- ネットワーキングに async/await、Combine、または URLSession を使用する
- Xcode プロジェクトの設定、署名、機能、またはエンタイトルメントを構成する
- Core Data、SwiftData、または UserDefaults でデータを永続化する
- TestFlight を通じて App Store への提出を準備する
このスキルの使用方法
1. SwiftUI ビュー
struct ContentView: View {
@StateObject private var viewModel = ItemViewModel()
var body: some View {
NavigationStack {
List(viewModel.items) { item in
NavigationLink(item.name) {
DetailView(item: item)
}
}
.navigationTitle("Items")
.task { await viewModel.loadItems() }
}
}
}
2. async/await を使用した ViewModel
@MainActor
class ItemViewModel: ObservableObject {
@Published var items: [Item] = []
func loadItems() async {
let (data, _) = try await URLSession.shared.data(from: url)
items = try JSONDecoder().decode([Item].self, from: data)
}
}
3. ナビゲーション(UIKit)
let detailVC = DetailViewController()
detailVC.item = selectedItem
navigationController?.pushViewController(detailVC, animated: true)
4. Xcode の構成
- Signing & Capabilities を設定します:チーム、Bundle ID、プロビジョニングプロファイル。
- Signing タブで機能(Push Notifications、Background Modes)を追加します。
- Product -> Archive -> Distribute App からアーカイブしてアップロードします。
ベストプラクティス
- UI の更新はすべて
@MainActor上で行い、クロージャではリテインサイクルを避けるために[weak self]を使用します。 - 権限を要求する前に、
NSCameraUsageDescriptionなどのプライバシーキーを Info.plist に追加します。 - App Store への提出前に、実機と TestFlight でテストします。
- レイアウト、タイポグラフィ、ナビゲーションパターンには、Apple Human Interface Guidelines に従います。
リソース
- https://developer.apple.com/documentation/swift
- https://developer.apple.com/documentation/swiftui
- https://developer.apple.com/design/human-interface-guidelines
キーワード
iOS、Swift、SwiftUI、UIKit、Xcode、async/await、Core Data、TestFlight、App Store
コメント
Markdown 対応