When to use this skill
Use this skill whenever the user wants to:
- Develop iOS apps with Swift, SwiftUI or UIKit, system frameworks, and App Store release
- Configure Xcode projects, signing, Capabilities, and TestFlight
How to use this skill
- Project: Xcode, SwiftUI or UIKit; Model-View, Combine/async; navigation and lifecycle.
- System: URLSession, UserDefaults, Core Data; permissions and background.
- Reference:https://developer.apple.com/documentation/swift
Best Practices
- Main thread and UI; memory and reference cycles (weak).
- Permission and privacy descriptions; TestFlight and review guidelines before release.
Keywords
iOS, Swift, SwiftUI, UIKit
Capability Boundaries
✅ Applicable Scenarios
- When you need to use the tech stack corresponding to this skill
- When the project needs to follow best practices
- When you need to get started quickly or gain an in-depth understanding of core concepts
⚠️ Points to Note
- Complex business logic needs to be adjusted according to specific scenarios
- Performance optimization needs to be evaluated based on the actual data volume
❌ Inapplicable Scenarios
- Unrelated tech stacks or frameworks
- Special scenarios requiring full customization
Common Pitfalls (Gotchas)
- Version Compatibility: Pay attention to the compatibility between framework versions and dependency libraries; APIs may differ across versions
- Configuration File Format: Configuration file format errors are the most common problem; it is recommended to use the editor's syntax checking
- Environment Variables: Ensure all necessary environment variables are set correctly, and do not hardcode sensitive information
- Dependency Conflicts: Pay attention to dependency conflicts when multiple versions coexist, and use lock files to pin versions
- Performance Pitfalls: Pay attention to performance optimization in large-data-volume scenarios, and avoid common problems such as N+1 queries
Usage Flow
Step 1: Environment Preparation
Ensure the necessary dependencies and tools are installed in the development environment.
Step 2: Configuration Initialization
Perform basic configuration according to project requirements.
Step 3: Using Core Features
Implement core features according to the sample code.
Step 4: Testing and Verification
Run tests to ensure the features work properly.
Step 5: Deployment and Release
Perform deployment and monitoring after completing development.