📊 Capítulo 36: Linguagem Swift
Módulo 02: Lógica de Programação & Algoritmos
🗺️ Os Pilares da Linguagem Swift (Apple / LLVM)
flowchart TD
SWIFT["Linguagem Swift Moderno (Chris Lattner / Apple)"]
SWIFT --> TYPE_SAFETY["1. Segurança Estrita de Tipos & Null Safety\n(Optionals com ?, if let, guard let)"]
SWIFT --> VALUE_TYPES["2. Preferência por Tipos de Valor\n(Structs & Enums Imutáveis com Copy-on-Write)"]
SWIFT --> SWIFT_UI["3. UI Declarativa Moderna\n(SwiftUI / Reatividade Baseada em Estado)"]
style SWIFT fill:#ede7f6,stroke:#512da8,stroke-width:2px
style TYPE_SAFETY fill:#e8f5e9,stroke:#4caf50,stroke-width:1.5px
style VALUE_TYPES fill:#fff3e0,stroke:#ff9800,stroke-width:1.5px
style SWIFT_UI fill:#e1f5fe,stroke:#03a9f4,stroke-width:1.5px
🎯 Slide 1: Segurança de Nulos com Optionals
-
O ‘Erro de 1 Bilhão de Dólares’ Mitigado: Variáveis normais não podem conter
nil. -
Tipos Opcionais (
Tipo?): Representam um valor que pode existir ou sernil. - Desembrulho Seguro (Unwrapping):
if let nome = usuario.nome { print("Olá, \(nome)!") }
🎯 Slide 2: Structs vs Classes & Imutabilidade
-
Structs (Value Types): Copiadas por valor; padrão recomendado para modelos de dados em Swift.
-
Copy-on-Write (CoW): Estruturas compartilham a mesma memória até que ocorra uma modificação.
let(Imutável) vsvar(Mutável): Imutabilidade garantida pelo compilador por padrão.
🎯 Slide 3: SwiftUI: A Revolução Declarativa da Apple
struct ContentView: View {
@State private var contador = 0
var body: some View {
VStack {
Text("Cliques: \(contador)")
Button("Incrementar") { contador += 1 }
}
}
}
- A UI é uma função puramente reativa do estado da aplicação!
Slide 1 de 1
Atalhos: ← → Navegar • Espaço Avançar • F Tela Cheia • Home Início • End Fim