Referência rápida

Guia de referência de recursos do Ruby 2.1

Guia histórico dos principais recursos introduzidos no Ruby 2.1: argumentos de palavra-chave obrigatórios, def retornando símbolos e literais.

· Publicado

O Ruby 2.1 introduziu importantes melhorias sintáticas, incluindo argumentos nomeados obrigatórios e o retorno de símbolos pelo def.

Argumentos de Palavra-chave Obrigatórios

Argumentos de palavra-chave sem valor padrão tornam-se estritamente obrigatórios:

# length é obrigatório; char assume o padrão '0'
def pad(number, length:, char: "0")
  number.to_s.rjust(length, char)
end

pad(42, length: 6) # => "000042"
pad(42)            # ArgumentError: missing keyword: :length

Definições de Método Retornam Símbolos

No Ruby 2.1+, def retorna o nome do método como um Symbol, permitindo modificadores na mesma linha:

class User
  # Torna privado inline
  private def secret_token
    "secret"
  end

  # Encadeamento com decoradores de módulo
  memoize def expensive_computation
    sleep 2
    42
  end
end

Melhorias Numéricas e em Literais

# Sufixo de literal racional 'r'
2/3r # => (2/3)

# Sufixo de literal complexo 'i'
3 + 4i # => (3+4i)

# Otimização de strings congeladas: 'freeze'
"constant_string".freeze

Referências

Temas relacionados