O Conceito de Armazenamento

Uma variável ou constante é um "local na memória" onde você armazena um valor. Pense nelas como caixas que guardam informações. A diferença é que as caixas das constantes são lacradas depois de preenchidas, enquanto as variáveis permitem trocar o conteúdo quando necessário.

Em Swift, o tipo de dado que uma variável ou constante pode armazenar é muito importante. Isso ajuda a garantir que o valor manipulado está de acordo com o esperado, aumentando a segurança e previsibilidade do código.

Declaração e Tipagem

Em Swift, podemos declarar variáveis e constantes de forma explícita ou deixar o compilador inferir o tipo de dado. Vamos ver essas duas abordagens.

  1. Inferência de Tipo Em muitos casos, o Swift consegue determinar automaticamente o tipo do valor que você está atribuindo a uma variável ou constante. Isso torna o código mais conciso e fácil de ler.

    var mensagem = "Bem-vindo ao curso de Swift!" // O tipo é inferido como String
    let numeroDaSorte = 7  // O tipo é inferido como Int
    

    No exemplo acima, o Swift analisa o valor e define o tipo automaticamente (mensagem é String e numeroDaSorte é Int). Isso é conveniente, mas o programador deve sempre ter cuidado para garantir que o valor atribuído seja claro.

  2. Tipagem Explícita Você também pode declarar explicitamente o tipo de uma variável ou constante. Isso é útil quando você quer garantir um tipo específico para evitar erros.

    var nota: Double = 9.5
    let cidade: String = "São Paulo"
    var ativo: Bool = true
    

    Neste caso, nota foi declarada como Double, cidade como String, e ativo como Bool (valor booleano, ou seja, verdadeiro ou falso).

Mutabilidade e Imutabilidade

Um dos conceitos fundamentais para entender variáveis e constantes é a ideia de mutabilidade (algo que pode mudar) e imutabilidade (algo que não pode mudar).

Benefícios de Usar Constantes

Usar let sempre que possível não é apenas uma boa prática; é também uma questão de segurança no código. Isso evita mudanças não intencionais em valores que deveriam ser fixos. Imagine que você está desenvolvendo um sistema bancário. O valor de taxaDeJurosAnual não deve ser modificado durante a execução do programa, pois isso poderia causar sérios problemas para cálculos financeiros.

Constantes e Variáveis no Contexto de Código Seguro

Swift é uma linguagem focada em segurança. Portanto, a escolha entre let e var tem um grande impacto em como o código é interpretado e na garantia de que os erros sejam minimizados. O Swift encoraja fortemente a imutabilidade, pois isso leva a menos erros e a uma maior previsibilidade.

Veja um exemplo que ajuda a ilustrar a importância de constantes:

let pi = 3.14159  // Valor constante para cálculos matemáticos
var raio = 2.0    // Pode mudar conforme a necessidade do cálculo

let area = pi * raio * raio
print("Área do círculo: \\(area)")

raio = 3.0  // Agora recalculamos para um raio diferente
let novaArea = pi * raio * raio
print("Nova área do círculo: \\(novaArea)")

Aqui, pi é constante porque o valor de Pi é conhecido e não muda. Já raio é uma variável porque você pode querer recalcular a área do círculo com diferentes valores de raio.

Tipo de Dados Comuns Usados em Variáveis e Constantes