Questão de Programação — Desenvolvimento Mobile — Quadrix 2025
- Código
- qg600000
- Banca
- Quadrix
- Órgão
- CRO-SP
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Desenvolvimento de Sistemas de Informação
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: ✅ CERTO. A afirmação está correta: em Swift, os optionals são um mecanismo da linguagem projetado exatamente para lidar com a possibilidade de ausência de valor (nil) de forma segura, evitando erros de tempo de execução. Essa é uma característica central da linguagem, amplamente documentada na documentação oficial da Apple.
Os optionals representam uma escolha: ou existe um valor, ou não existe (nil). Em Swift, qualquer tipo pode ser declarado como opcional, bastando adicionar o símbolo ? ao tipo (ex.: Int?, String?). Isso força o desenvolvedor a tratar explicitamente o caso de ausência de valor, em vez de assumir que a variável sempre terá um valor válido. Essa abordagem é uma das principais razões pelas quais Swift é considerada uma linguagem segura, pois muitos erros comuns em outras linguagens (como acessar uma referência nula) são capturados em tempo de compilação.
Na prática, para acessar o valor contido em um optional, é necessário "desembrulhá-lo" (unwrap). Swift oferece várias formas seguras de fazer isso, como o optional binding (if let), o guard let e o operador de coalescência nula (??). Por exemplo:
var nome: String? = "João"
if let nomeDesembrulhado = nome {
print("Olá, \(nomeDesembrulhado)")
} else {
print("Nome é nil")
}Esse código verifica se nome contém um valor; se sim, desembrulha e usa; se não, executa o bloco else. Isso elimina a necessidade de checagens manuais de nulidade e torna o código mais legível e seguro.
A alternativa errada seria afirmar que optionals não existem em Swift ou que servem para outro propósito (como lidar com erros). A banca poderia tentar confundir o candidato dizendo que optionals são usados para tratamento de exceções ou que são exclusivos de Objective-C. No entanto, a afirmação do enunciado está perfeitamente alinhada com a definição oficial.
Para fixar, lembre-se: optional = "pode ou não ter valor". Na prova, se a questão disser que optionals servem para "lidar com valores nulos de forma segura", está correta. Se disser que servem para "tratamento de erros" ou "controle de fluxo", está errada.
✅ CERTO.
Link permanente: /questoes/qg600000