Conheça as novidades do Ruby 2.5

em Geral.

Em dezembro do ano passado foi lançado oficialmente o Ruby 2.5. Diante disso, resolvi separar duas novidades dessa versão para compartilhar com vocês. Confira:

  • Métodos Array#append/prepend

Atualmente, quando precisamos trabalhar com um array e precisamos adicionar um elemento nele, seja no início ou no fim do array, utilizamos os métodos push e unshift. Na nova versão do Ruby, ganhamos os métodos append e prepend para fazer esta mesma manipulação.

Antes

array = [‘f’,’g’,’h’]

array.push(‘i’)

=> [“f”, “g”, “h”, “i”]

array.push(‘j’,’k’)

=> [“f”, “g”, “h”, “i”, “j”, “k”]

array.unshift(‘e’)

=> [“e”, “f”, “g”, “h”, “i”, “j”, “k”]

array.unshift(‘c’,’d’)

=> [“c”, “d”, “e”, “f”, “g”, “h”, “i”, “j”, “k”]

Depois

array = [‘f’,’g’,’h’]

array.append(‘i’)

=> [“f”, “g”, “h”, “i”]

array.append(‘j’,’k’)

=> [“f”, “g”, “h”, “i”, “j”, “k”]

array.prepend(‘e’)

=> [“e”, “f”, “g”, “h”, “i”, “j”, “k”]

array.prepend(‘c’,’d’)

=> [“c”, “d”, “e”, “f”, “g”, “h”, “i”, “j”, “k”]

A ideia é deixar os nomes dos métodos mais intuitivos para, assim, facilitar o entendimento. Quem já trabalhou com jQuery e usou os append e prepend já está mais acostumado com essa sintaxe e vai se adaptar fácil. É importante lembrar que a sintaxe antiga continua funcionando normalmente, os novos nomes são como um alias.

  • Método Hash#transform_keys

O método transform_keys serve para alterar todas as chaves de um hash de acordo com o bloco que você irá passar, podendo assim, alterar todas as chaves do hash levando em conta uma lógica sua.

hash = { a: ‘value 1’, b: ‘value 1’ }

hash.transform_keys { |k| k.to_s }

=> {“a”=>’value 1′, “b”=>’value 2′}

hash.transform_keys { |k| k.to_s.ord }

=> {97=>’value 1′, 98=>’value 2′}

p hash

=> {:a=>’value 1′, :b=>’value 2′}

Perceba que o hash inicial não é alterado, para alterá-lo inicial você precisa usar o “!” ao final do método.

hash = { a: ‘value 1’, b: ‘value 1’ }

hash.transform_keys! { |k| k.to_s }

=> {“a”=>”value 1”, “b”=>”value 1”}

hash.transform_keys! { |k| k.ord }

=> {97=>”value 1″, 98=>”value 1″}

p hash

=> {97=>”value 1″, 98=>”value 1″}

Se você quiser testar esses métodos, basta instalar o Ruby 2.5. Caso você use o RVM provavelmente será necessário atualizá-lo antes de instalar a nova versão. Para isso, basta seguir os passos abaixo:

  • Atualizar RVM

rvm get head

  • Instalar Ruby 2.5

rvm install ruby-2.5

O que achou das novidades? Gostou e quer saber outras? Deixe nos comentários!

Você também pode gostar