Escrever aplicativos SwiftUI requer entender padrões modernos, otimização de desempenho e diretrizes de design da Apple. Esta habilidade fornece orientação especializada sobre gerenciamento de estado, composição de visualizações e adoção do Liquid Glass do iOS 26+ para ajudá-lo a criar aplicativos iOS de alta qualidade.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "swiftui-expert-skill". Review this SwiftUI code: ```swift struct ContentView: View { @StateObject var viewModel = MyViewModel() @State private var selectedItem: Item? var body: some View { List(items) { item in Text(item.name) .onTapGesture { selectedItem = item } } .sheet(isPresented: $selectedItem != nil) { DetailView(item: selectedItem!) } } } ```
Résultat attendu:
## Resultados da Revisão de Código
### Problemas Encontrados:
1. **Prefira @Observable sobre @StateObject** (Alta prioridade)
- @StateObject é obsoleto. Use @Observable com @State para código novo.
2. **Use .sheet(item:) em vez de .sheet(isPresented:)**
- O código atual usa binding opcional que é propenso a erros.
3. **Substitua onTapGesture por Button**
- Button é mais semântico e acessível.
### Alterações Recomendadas:
```swift
@Observable
class MyViewModel {
// model properties
}
struct ContentView: View {
@State private var viewModel = MyViewModel()
@State private var selectedItem: Item?
var body: some View {
List(items) { item in
Button {
selectedItem = item
} label: {
Text(item.name)
}
}
.sheet(item: $selectedItem) { item in
DetailView(item: item)
}
}
}
```
Utilisation de "swiftui-expert-skill". How do I add Liquid Glass to my iOS 26 app?
Résultat attendu:
## Implementação do Liquid Glass no iOS 26
### Efeito Glass Básico:
```swift
if #available(iOS 26, *) {
content
.padding()
.glassEffect(.regular.interactive(), in: .rect(cornerRadius: 16))
} else {
content
.padding()
.background(.ultraThinMaterial, in: RoundedRectangle(cornerRadius: 16))
}
```
### Diretrizes Principais:
1. Aplique `.glassEffect()` após modificadores de layout e aparência
2. Envolva múltiplos elementos glass em `GlassEffectContainer`
3. Use `.interactive()` apenas em elementos clicáveis
4. Sempre forneça fallbacks para versões mais antigas do iOS
Audit de sécurité
SûrAll static findings are false positives. The 'Ruby/shell backtick execution' detections are markdown code block delimiters in documentation files. The 'weak cryptographic algorithm' and 'system reconnaissance' patterns are false positives from documentation text and file paths. No actual code execution, network calls, or prompt injection attempts exist. This is a pure documentation skill containing SwiftUI best practices and reference guides.
Problèmes à risque élevé (1)
Problèmes à risque faible (1)
Score de qualité
Ce que vous pouvez construire
Revisão de código para equipes iOS
Revisar pull requests contendo alterações SwiftUI. Obter feedback sobre padrões de gerenciamento de estado, uso de APIs e problemas de performance antes de fazer merge.
Modernização de código SwiftUI legado
Refatorar bases de código SwiftUI mais antigas para usar padrões modernos como @Observable, NavigationStack e modificadores contemporâneos.
Aprendendo SwiftUI moderno
Entender melhores práticas e padrões modernos ao criar novos recursos SwiftUI. Obter orientação sobre seleção de property wrappers e composição de visualizações.
Essayez ces prompts
Revise este código SwiftUI e verifique se segue as melhores práticas modernas. Observe o gerenciamento de estado, uso de APIs e performance: {{code}}Ajude-me a substituir padrões SwiftUI obsoletos neste código por alternativas modernas. Especificamente atualize: {{code}}Analise esta visualização SwiftUI em busca de problemas de performance. Identifique redraws desnecessários, atualizações de estado ineficientes ou problemas de layout: {{code}}Ajude-me a projetar e implementar um novo recurso SwiftUI. Preciso de uma visualização que mostre uma lista de itens com detalhes ao tocar, usando padrões modernos. Requisitos: {{requirements}}Bonnes pratiques
- Prefira @Observable sobre ObservableObject para novo gerenciamento de estado. Marque classes @Observable com @MainActor a menos que use isolamento de ator padrão.
- Aplique efeitos glass após modificadores de layout. Envolva múltiplos elementos glass em GlassEffectContainer e forneça verificações de disponibilidade do iOS 26+ com fallbacks.
- Extraia visualizações complexas em subvisualizações menores para melhor performance e manutenibilidade. Use modificadores sobre visualizações condicionais para preservar identidade de visualização.
Éviter
- Usar @State ou @StateObject para valores passados de visualizações pai - estes apenas aceitam valores iniciais e não atualizarão reativamente.
- Usar .indices em ForEach para conteúdo dinâmico - isso quebra identidade e causa problemas de rendering. Use identificadores únicos estáveis em vez disso.
- Criar objetos ou realizar computações pesadas no corpo da visualização - body deve ser puro e rápido, com toda lógica movida para modelos ou propriedades computadas.