Ruby · Essencial · Português · Técnico
constante
Nome iniciado por letra maiúscula, como LIMITE ou Pessoa, que guarda um valor pensado para não mudar. Reatribuir só gera aviso, e o objeto ainda pode ser alterado.
Onde usar
Aparece em configurações fixas e em nomes de classes e módulos, que também são constantes. Use freeze em coleções constantes para evitar mudanças por engano.
Em código
LIMITE = 3
LIMITE = 5 # aviso: already initialized
LISTA = %w[a b].freeze
p LISTA.frozen? # => true
p LIMITE # => 5Exemplos
Essa constante deveria estar congelada com freeze.
O Ruby só avisa se você reatribuir uma constante.
Cuidado
Não é imutável como em outras linguagens: reatribuir só gera um warning, e um array constante pode mudar por dentro.
Antônimos
variável