..


Links Patrocinados

Alternativas de sintaxe em Ruby

Artigo escrito por Claudio Garau

Uma das grandes vantagens de uma linguagem simples e poderosa como Ruby é a capacidade de alcançar os mesmos resultados de maneiras diferentes, ou seja, utilizando diferentes construções sintáticas para imprimir a mesma saída ou para gerar comportamentos equivalentes.

Neste breve artigo, apresentamos um exemplo simples baseado nos ciclos e não apenas o resultado desejado é o de criar um programa simples que pode imprimir todos os números em um intervalo entre "1" e "10".

Uma solução como o seguinte:

 



 coloca 1,2,3,4,5,6,7,8,9,10

 
pareceria à primeira vista muito conveniente, mas se a nossa gama, foi muito maior (digamos entre "1" e "100"), pense novamente, o que estamos procurando é um script que necessita apenas de dois parâmetros: os valores iniciais final (mínimo e máximo) que suporte o intervalo.
Desta forma, o código usado pode ser usado novamente para a geração de saída muito "volumoso".

Cada pemette podemos construir um valor inicial para aumentar até atingir um valor de rescisão passado como argumento para construir, vemos um exemplo:

 



 . (1 .. 10) Cada fazer | i |



  



 coloca o







 final

 
Assim, para cada valor (cada) na figura faixa correspondente será impresso até que ele atinja um valor igual ao estabelecido nas condições estabelecidas pelo segundo parâmetro (no nosso caso "10").
As duas barras verticais que envolvem o incremento variável ("| i |") são usados ​​para delimitar a variável dentro do loop isolando-se do resto do código, pois representa um valor "em si".

O mesmo resultado poderia ser alcançado através da variação da leggermanete sintaxe usada e "salvar" a quantidade de código para digitar:

 



 (1 .. 10) Cada. {| I | puts i}

 
O valor de retorno será devolvido pela execução de uma instrução ("{| i | puts i}") vaolore repetido para cada da faixa com base em dois parâmetros que marcam a execução.

Uma alternativa poderia ser baseado no uso do laço, como se segue:

 



 for i in (1 .. 10)



  



 coloca o







 final

 
Novamente passamos os parâmetros 2 ciclos que definem o intervalo de valores que a variável "i" pode ter aumentado durante os 10 iterações necessárias, onde o valor "10" representa a condição que termina o ciclo.

Mas nossas alternativas não terminamos, vamos olhar para esta simples linha de código:

 



 1.upto (10) {| i | puts i}

 
até um método para objetos que representam tipos numéricos, a sintaxe deste método é alternativa à de "para" escrever "x.upto (y)" é de fato equivalente ao tipo "for (i = x, x < = y, i + +) {...} ".
Na prática, com o "até" podemos obter o mesmo resultado de um ciclo sem necessariamente recorrer a um loop, o resultado é uma economia em termos de digitar o código e os recursos fornecidos pelo sistema para executar uma instrução.

Agora vamos ver um último exemplo:

 



 * Puts (1 .. 10)

 
A última linha da proposta de código é, sem dúvida, mais fácil de todos os observados até agora, o simples uso do símbolo "*" permite que você imprima todos os valores dentro da faixa do passado como um argumento sem recorrer a declaração coloca qualquer ciclo ou ter que especificar a chamada de qualquer método.

Na mesma categoria ...
E-Learning
Ruby e Ruby on Rails (Curso) Ruby e Ruby on Rails (Curso)
Criar aplicações de software e Web com Ruby e RoR. A partir de 39 €.
Links Patrocinados