📎 Webclip
Algumas Dicas da Linguagem Ruby
A página reúne truques de Ruby para deixar tarefas comuns mais curtas ou mais legíveis. Mostra troca de variáveis, interpolação de strings, condicionais que retornam valor, ranges, hashes, arrays, splat, join e conversão de números entre bases.
Fichamento#
- Ruby permite escrever a mesma coisa de jeitos diferentes, e parte disso é associada ao Principle of Least Surprise.
- A troca de duas variáveis pode ser feita com atribuição paralela, sem usar variável temporária.
- Em Ruby, a interpolação de strings é preferida para montar textos com valores de variáveis.
- Strings formatadas com
%também são usadas, e a interpolação pede aspas duplas. %(...)facilita strings multilinha com interpolação, evitando muitas barras de escape.%w(...)é uma forma alternativa de declarar arrays de strings.- Números podem usar
_como separador de milhar. ifecasedevolvem o valor da última expressão executada, então o bloco inteiro pode ser atribuído a uma variável.caseusa===, e comRangeisso testa se o valor pertence ao intervalo.Rangepode ser iterado comfor,uptooueach, e também pode virar array.- A soma de um
Rangepode ser feita comreduce, inclusive na forma curtareduce(:+). - Hash pode ser criado com sintaxe de símbolo em Ruby 1.9+ e também a partir de um array com chaves e valores alternados usando
Hash[*array]. zipserve para montar um hash a partir de arrays separados de chaves e valores.*hashtransforma o hash em pares chave-valor, eflattenachata essa estrutura.- Arrays podem ser inicializados de várias formas equivalentes, inclusive com
%w,Array.newe repetição com*. - O splat permite capturar o resto de um array durante a atribuição.
- O splat também expande um array em argumentos de método.
[ *args ]serve para tratar um único valor ou um array do mesmo jeito na iteração.joine a multiplicação do array por uma string fazem a junção dos elementos com separador.randgera um inteiro aleatório, eto_s(base)/to_i(base)convertem números entre bases.
