Introdução
Este é um pequeno tutorial de Ruby que não deverá demorar mais de 20 minutos a completar. Assume-se á partida que já tem o Ruby instalado. (Se não tem o Ruby no seu computador, faça o download e instale-o antes de começar.)
Ruby Interactivo
Abrir o IRB.
- Se está a usar Mac OS X abra o
Terminal, escrevairb, e depois pressione a tecla enter. - Se está a usar Linux, abra uma shell e escreva
irb, seguido de enter. - Se está a usar Windows, abra
fxria partir do atalho para o Ruby no seu menu Iniciar.
irb(main):001:0>
Ok, abriu. E agora?
Escreva isto: "Ola Mundo"
irb(main):001:0> "Ola Mundo"
=> "Ola Mundo"
O Ruby obedeceu-lhe!
O que é que sucedeu? Será que acabamos de escrever o mais pequeno programa «Olá mundo»? Não exactamente, a segunda linha é a forma de o IRB nos dizer qual o resultado da última expressão que 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 retorna sempre nil, o que em Ruby é o valor que representa o nada absoluto.
Uma Máquina Calculadora gratuita
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. Suficientemente fácil. E então três vezes dois?
Pode escrevê-lo, é suficientemente curto, mas também podemos voltar atrás e mudar o que acabamos
de inserir. Carregue na tecla Seta para cima do teclado e veja se tal o leva à linha com 3+2.
Se tal suceder, use a tecla da seta para a esquerda para mover o cursor para a frente do sinal de
mais + e depois use a tecla de backspace para mudar o sinal para *.
irb(main):004:0> 3*2
=> 6
De seguida vamos tentar três ao quadrado:
irb(main):005:0> 3**2
=> 9
Em Ruby ** é a forma de dizer 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 atrás? Se disse “que estava a determinar a raiz quadrada de nove” então está correcto. Mas vejamos as coisas com mais pormenor. Primeiro de tudo, o que é Math?
Módulos, Agrupar Código por Tópico
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 em conjunto sobre um nome familiar.
Math também contém métodos como sin() e tan().
Depois segue-se um ponto final. O que faz o ponto? O ponto final é 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 facto da raiz quadrada de um número na maioria dos casos não ser
um inteiro e, assim sendo, o método retorna sempre um número de vírgula flutuante.
E se nos quisermos lembrar do resultado desta 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 a afastarmos-nos da mensagem mais
tradicional Ola Mundo que os guias de iniciação normalmente focam…
portanto vamos voltar ao assunto.
