بنقرة واحدة
mobile
移动开发(iOS/Android/SwiftUI/Jetpack Compose/React Native/Flutter)。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
移动开发(iOS/Android/SwiftUI/Jetpack Compose/React Native/Flutter)。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
CCG Skills - Quality gates, documentation generator, and multi-agent orchestration. Auto-installed by CCG workflow system.
变更校验关卡。分析代码变更,检测文档同步状态,评估变更影响范围。当用户提到变更检查、文档同步、代码审查、提交前检查、diff分析时使用。在设计级变更、重构完成时自动触发。
模块完整性校验关卡。扫描目录结构、检测缺失文档、验证代码与文档同步。当用户提到模块校验、文档检查、结构完整性、README检查、DESIGN检查时使用。在新建模块完成时自动触发。
代码质量校验关卡。检测复杂度、重复代码、命名规范、函数长度等质量指标。当用户提到代码质量、复杂度检查、代码异味、重构建议、lint检查、代码规范时使用。在复杂模块、重构完成时自动触发。
安全校验关卡。自动扫描代码安全漏洞,检测危险模式,确保安全决策有文档记录。当用户提到安全扫描、漏洞检测、安全审计、代码安全、OWASP、注入检测、敏感信息泄露时使用。在新建模块、安全相关变更、攻防任务、重构完成时自动触发。
从近期开发会话中萃取可复用的模式 / 决策 / 教训。当用户提到提取教训 / 复盘 / lessons learned / 知识沉淀 / 经验萃取 / 提炼模式时使用。会扫 .context/ 决策日志 + git log 提交语义。
| name | mobile |
| description | 移动开发(iOS/Android/SwiftUI/Jetpack Compose/React Native/Flutter)。 |
| license | MIT |
| user-invocable | false |
| disable-model-invocation | false |
| context | fork |
原生开发 跨平台开发
├── iOS (SwiftUI/UIKit) ├── React Native (JS/TS)
├── Android (Compose/Kotlin) └── Flutter (Dart)
└── 共通:MVVM / 网络层 / 持久化 / 测试
struct MyView: View { var body: some View { ... } }@State — 本地状态@Binding — 父子双向绑定@StateObject — 拥有 ObservableObject@ObservedObject — 引用 ObservableObject@EnvironmentObject / @Environment — 全局注入@Published 属性自动触发 UI 更新struct CardModifier: ViewModifier + extension View { func cardStyle() }.task { await ... } / .onAppear / .onDisappearNSLayoutConstraint.activate([...]) + translatesAutoresizingMaskIntoConstraints = falseURLSession.shared.dataTaskPublisher → map → decode → eraseToAnyPublisher.sink(receiveCompletion:receiveValue:) + .store(in: &cancellables)debounce / removeDuplicates / combineLatest / flatMapPassthroughSubject(无初始值)/ CurrentValueSubject(有初始值)MVVM(推荐):
Codable 数据结构protocol + async throws 方法@MainActor class VM: ObservableObject + @Published 属性@StateObject private var viewModel = VM()VIPER(复杂场景):
func get<T: Decodable>(_ path:) async throws -> Trequest.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")enum APIError: Error { case invalidURL, invalidResponse, httpError(Int) }@propertyWrapper struct UserDefault<T> 简化访问SecItemAdd / SecItemCopyMatching 存储敏感数据NSPersistentContainer + NSManagedObjectContext@Model 宏简化持久化@MainActor 确保 UI 线程安全@Composable fun MyScreen() { ... }remember { mutableStateOf(value) } — 本地状态rememberSaveable — 跨配置变更保存derivedStateOf — 派生状态避免重组items(list, key = { it.id }) 提供稳定 keyLaunchedEffect(key) — 启动协程DisposableEffect(key) — 清理资源(onDispose)SideEffect — 同步状态到外部snapshotFlow { state } — 监听状态变化转 FlowNavHost + composable(route) + navController.navigate()fun Modifier.myModifier(): Modifier = composed { ... }MutableStateFlow(UiState()) + .asStateFlow()_uiState.update { it.copy(isLoading = true) }val uiState by viewModel.uiState.collectAsState()viewModelScope.launch { withContext(Dispatchers.IO) { ... } }coroutineScope { val a = async { ... }; val b = async { ... } }flow { emit(value) } + .flowOn(Dispatchers.IO).stateIn(scope, SharingStarted.WhileSubscribed(5000), initial)searchQuery.debounce(300).filter { it.isNotEmpty() }.flatMapLatest { ... }Channel<Event>(BUFFERED) + .receiveAsFlow() 一次性事件@HiltAndroidApp Application + @AndroidEntryPoint Activity@Module @InstallIn(SingletonComponent::class) 提供依赖@Provides @Singleton 提供实例 / @Binds 绑定接口@HiltViewModel class VM @Inject constructor(repo) + hiltViewModel()@Entity(tableName) + @PrimaryKey + @ColumnInfo@Query / @Insert(onConflict = REPLACE) / @Delete + 返回 Flow<List<T>>@Database(entities, version) + Room.databaseBuilder@GET / @POST / @Path / @Query / @Body / @MultipartaddInterceptor + connectTimeoutkey 参数优化 LazyColumnremember / derivedStateOf 避免过度重组| 维度 | React Native | Flutter |
|---|---|---|
| 语言 | TypeScript | Dart |
| 渲染 | 原生组件(桥接) | 自绘引擎(Skia) |
| 性能 | 接近原生 | 接近原生 |
| 热重载 | Fast Refresh | Hot Reload |
| 生态 | npm(成熟) | pub.dev(快速增长) |
| UI 一致性 | 跟随系统 | 完全一致 |
| 包体积 | ~7MB | ~15MB |
FlatList + keyExtractor + initialNumToRender + windowSize@react-navigation/native + createNativeStackNavigatorcreateSlice + createAsyncThunk)/ ZustandNativeModules 调用 iOS(Swift) / Android(Kotlin) 原生代码React.memo / Hermes 引擎 / 新架构 JSI(无桥接序列化)setStateChangeNotifier + Consumer / context.watchFutureProvider / StateNotifierProvider + ref.watchGoRoute + context.go/push/pop)MethodChannel + Platform Channels(iOS Swift / Android Kotlin)const 构造函数 / ListView.builder / RepaintBoundary / ValueKey| 场景 | 推荐 | 理由 |
|---|---|---|
| 团队有 Web 背景 | React Native | 学习成本低 |
| 追求极致性能/动画 | Flutter | 自绘引擎 60fps |
| UI 高度定制 | Flutter | 完全控制渲染 |
| 大量原生交互 | React Native | 桥接生态成熟 |
| 需要原生极致体验 | 原生开发 | 无桥接开销 |
| 实践 | 说明 |
|---|---|
| MVVM 架构 | 分离 UI / 业务逻辑 / 数据层 |
| 依赖注入 | Hilt(Android) / Protocol(iOS) / Context(RN) |
| 响应式状态 | StateFlow / Combine / Hooks / Riverpod |
| 网络层封装 | 统一错误处理 + Token 管理 + 重试 |
| 本地持久化 | Room / Core Data / AsyncStorage / Hive |
| 列表优化 | 懒加载 + 稳定 key + 缓存 |
| 测试覆盖 | ViewModel 单元测试 + UI 测试关键流程 |
iOS、SwiftUI、UIKit、Combine、Android、Jetpack Compose、Kotlin、React Native、Flutter、跨平台、移动开发、MVVM