SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
12.11.2024

Lição: 6: Tipos de Dados e Inferência de Tipos

Em Swift, os tipos de dados desempenham um papel crucial na definição da natureza dos valores e como eles podem ser manipulados. Swift oferece um conjunto rico de tipos de dados embutidos, e entender esses tipos, junto com a inferência de tipos, é essencial para uma programação eficaz.

1. Tipos de Dados Básicos

Swift possui vários tipos de dados básicos que você usará com frequência:

  • Inteiros: Usados para representar números inteiros.
  • Números de ponto flutuante: Usados para números com casas decimais.
  • Booleanos: Representa true ou false.
  • Strings: Usados para texto.
  • Caracteres: Representa um único caractere.

1.1 Inteiros

Swift fornece dois tipos de inteiro com sinal (Int e UInt) que podem ser usados para representar números inteiros.

let idade: Int = 25
let populacao: UInt = 1_000_000 // O sublinhado melhora a legibilidade
print("Idade: \(idade), População: \(populacao)")

1.2 Números de ponto flutuante

Você pode usar os tipos Float e Double para valores decimais. Double é um valor de 64 bits, enquanto Float é um valor de 32 bits.

let pi: Double = 3.14159
let temperatura: Float = 36.6
print("Pi: \(pi), Temperatura: \(temperatura)")

1.3 Booleanos

O tipo Bool pode conter apenas dois valores: true ou false.

let oSwiftEdivertido: Bool = true
print("Swift é divertido? \(oSwiftEdivertido)")

1.4 Strings e Caracteres

Strings são usadas para representar uma sequência de caracteres, enquanto os caracteres representam um único caractere.

let cumprimento: String = "Olá, Swift!"
let primeiroCaracter: Character = "H"
print(cumprimento)
print("Primeiro caractere: \(primeiroCaracter)")

2. Inferência de Tipos

Swift possui um recurso poderoso chamado inferência de tipos. Isso significa que o compilador Swift pode deduzir o tipo de uma variável com base no valor que lhe é atribuído, permitindo que você omita a declaração do tipo.

2.1 Exemplo de Inferência de Tipos

let mensagem = "Bem-vindo ao Swift!"
let pontuacao = 95            // Int
let pontuacaoMedia = 88.5     // Double
let passou = true             // Bool

print(mensagem)
print("Pontuação: \(pontuacao), Pontuação Média: \(pontuacaoMedia), Aprovado: \(passou)")

No código acima, o compilador Swift infere automaticamente os tipos de pontuacao, pontuacaoMedia e passou.

3. Segurança de Tipos

Swift é uma linguagem com segurança de tipos, o que significa que ela aplica verificações de tipos em tempo de compilação. Isso ajuda a detectar erros precocemente no ciclo de desenvolvimento.

3.1 Exemplo de Segurança de Tipos

let algumNumero: Int = 25
// let outroNumero: String = algumNumero // Esta linha causará um erro de compilação

print("Algum número: \(algumNumero)")

No exemplo acima, se você tentar atribuir um Int a uma String, ocorrerá um erro de compilação, protegendo você de erros de tipos indesejados.

4. Aliases de Tipo

Você pode criar um alias de tipo em Swift usando a palavra-chave typealias. Isso pode ajudar a simplificar seu código, especialmente para tipos complexos.

4.1 Exemplo de Aliases de Tipo

typealias Distancia = Double
typealias Nome = String

let distanciaAteMarte: Distancia = 227.9e6 // em quilômetros
let nomeDoAstronauta: Nome = "Sally Ride"

print("Distância até Marte: \(distanciaAteMarte) km, Astronauta: \(nomeDoAstronauta)")

Conclusão

Entender os tipos de dados e a inferência de tipos em Swift é fundamental para escrever um código seguro e eficiente. Ao aproveitar o sistema de tipos do Swift, você pode evitar muitos erros comuns de programação e melhorar a legibilidade e manutenção do seu código. Na próxima aula, exploraremos as funções e como elas funcionam em Swift. Boa codificação!

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!