1 | 2 | 3 | 4

Ruby em Vinte Minutos

Introdução

Este é um pequeno tutorial de Ruby que não deverá demorar mais de 20 minutos para completar. Ele presume que você já tem o Ruby instalado. (Se não tiver o Ruby no seu computador, faça o download e instale-o antes de começar.)

Ruby Interativo

O Ruby vem com um programa que mostrará os resultados de quaisquer instruções que você digitar. Brincar com código Ruby em sessões interativas como essa é um jeito formidável de aprender a linguagem.

Abra o IRB (que significa Interactive Ruby).

  • Se estiver usando Mac OS X abra o Terminal, escreva irb, e depois pressione a tecla enter.
  • Se estiver usando Linux, abra um shell e escreva irb, seguido de enter.
  • Se estiver usando Windows, abra Interactive Ruby a partir do atalho para o Ruby no seu menu Iniciar.
irb(main):001:0>

Ok, ele abriu. E agora?

Escreva isto: "Ola Mundo"

irb(main):001:0> "Ola Mundo"
=> "Ola Mundo"

O Ruby te Obedeceu!

O que é que aconteceu? Será que acabamos de escrever o menor programa de “Olá mundo” do mundo? Não exatamente, a segunda linha é a forma do IRB nos dizer qual o resultado da última expressão que ele avaliou. Se desejarmos imprimir “Ola Mundo”, necessitamos de um pouco mais:

irb(main):002:0> puts "Ola Mundo"
Ola Mundo
=> nil

puts é o comando básico para imprimir algo em Ruby. Mas então o que é aquele => nil ? É o resultado da expressão. puts sempre retorna nil, que em Ruby é o valor que representa o nada absoluto.

Sua Calculadora Gratuita está Aqui!

Já temos neste momento conhecimento suficiente para utilizar o IRB como uma calculadora básica:

irb(main):003:0> 3+2
=> 5

Três mais dois. Muito fácil. Mas e três vezes dois? Você pode escrevê-lo, é suficientemente curto, mas também podemos voltar atrás e mudar o que acabamos de inserir. Pressione Seta para cima no teclado e veja se ele o leva à linha com 3+2. Se isso acontecer, use a tecla da seta para a esquerda para mover o cursor para a frente do sinal de + e depois use a tecla de backspace para mudar o sinal para *.

irb(main):004:0> 3*2
=> 6

Em seguida vamos tentar três ao quadrado:

irb(main):005:0> 3**2
=> 9

Em Ruby ** é a forma de dizer “a potência de”. Mas o que acontece quando queremos saber o inverso disto, ou seja, a raiz quadrada de algo?

irb(main):006:0> Math.sqrt(9)
=> 3.0

Muito bem, o que aconteceu aqui? Se você achou que ele “estava descobrindo a raiz quadrada de nove” então está correto. Mas vejamos as coisas com mais detalhes. Primeiramente, o que é Math?

Módulos Agrupam Código por Tópicos

Math é um módulo nativo para funções matemáticas. Os módulos têm dois papeis em Ruby. Este é um desses papeis: agrupar métodos semelhantes sob um nome familiar. Math também contém métodos como sin() e tan().

Depois segue-se um ponto. O que faz o ponto? O ponto é como se identifica o receptor de uma mensagem. Qual é a mensagem? Neste caso é sqrt(9), o que significa chamar o método sqrt, uma abreviatura em língua inglesa para “square root” (raiz quadrada) com o parâmetro 9.

O resultado desta chamada de método é o valor 3.0. Se repararmos bem, o resultado não é apenas 3. Mas isso deve-se ao fato de que a raiz quadrada de um número na maioria dos casos não é um inteiro e, assim sendo, o método retorna sempre um número de ponto flutuante.

E se nós quisermos lembrar do resultado dessa matemática toda? Podemos atribuir o resultado a uma variável.

irb(main):007:0> a = 3 ** 2
=> 9
irb(main):008:0> b = 4 ** 2
=> 16
irb(main):009:0> Math.sqrt(a+b)
=> 5.0

Como calculadora isto é muito bom, mas nós estamos nos afastando da mensagem tradicional de Ola Mundo em que os tutoriais para iniciantes normalmente focam… portanto vamos voltar ao assunto.