Neste artigo, vamos explorar o IRB (Interactive Ruby), um ambiente interativo que permite as pessoas testarem códigos Ruby rapidamente. O IRB é uma ferramenta essencial para quem está começando a aprender programação em Ruby.

Apresentação


IRB é uma sigla (abreviação) para “Interactive Ruby” em português, significa “Ruby Interativo”. Ele é um ambiente de linha de comando que permite executar comandos Ruby e ver os resultados imediatamente.

O IRB é instalado automaticamente junto com o Ruby, ele é bastante útil porque permite ver rapidamente como o código funciona, para entender assuntos iniciais de programação, como variáveis, tipos de dados, operadores e estruturas de controle ele é ótimo.

É importante dizer que a ideia não é programar projetos completos no IRB, mas sim usar ele como uma ferramenta para aprender e experimentar com o código Ruby. Ao longo desse artigo vamos ver como ele funciona e como você pode usá-lo.

Iniciando o IRB


Para iniciar o IRB, você precisa ter o Ruby instalado no seu computador. Depois é só abrir o terminal, se estiver no Ubuntu pode usar o atalho Ctrl + Alt + T para abrir o terminal rapidamente.

Com o terminal aberto, digite o seguinte comando para iniciar o IRB:

irb

No meu terminal eu fiz assim:

parallels@ubuntu:~$ irb

pressionei Enter e o IRB foi iniciado. Quando o IRB é iniciado, após o Enter, no terminal aparece algo assim:

irb(main):001> 

Testando o IRB


Quando o IRB está ativo comandos de terminal como:

  • ls - para listar arquivos e pastas
  • cd - para mudar de pasta
  • pwd - para mostrar o endereço da pasta atual

Não funcionam mais, pois o IRB está esperando comandos em Ruby.

Para sair do IRB, você pode digitar o comando:

exit

Aí sim você volta para o terminal normal.

Mas, uma vez que você digita irb e pressiona Enter, você está dentro do IRB e pode começar a digitar comandos Ruby.

Para testar isso, vamos usar o comando que aprendemos no artigo anterior, o comando puts, que serve para mostrar mensagens na tela.

irb(main):001> puts "Olá mundo!"
Olá mundo!
=> nil
irb(main):002>

No exemplo acima, digitamos puts "Olá mundo!" e pressionamos Enter. O IRB executou o comando e mostrou a mensagem “Olá mundo!” na tela. Depois disso, o IRB mostrou => nil, que indica que o comando não retornou nenhum valor útil (no sentido de resultado de alguma operação, conta ou expressão).

Agora vamos fazer outro teste incrementando (adicionando) o elemento \n (barra invertida + letra n) dentro da mensagem, e depois dele outra mensagem, para ver como o IRB lida com isso.

irb(main):008> puts "Olá mundo! \nIRB está funcionando."
Olá mundo! 
IRB está funcionando.
=> nil
irb(main):009> 

O que aconteceu aqui? O elemento \n é um caractere especial, caractere especial é um símbolo que representa algo diferente do que ele parece. Nesse caso, o \n não é apenas uma barra invertida seguida da letra n, ele representa uma ação que o computador deve executar, nesse caso a ação que o \n representa é “pular para a próxima linha”.

Então, quando digitamos puts "Olá mundo! \nIRB está funcionando.", o IRB interpretou o \n como um comando para pular para a próxima linha, e por isso a mensagem “IRB está funcionando.” apareceu na linha de baixo.

Se tivessemos colocado o texto “IRB está funcionando.” afastado do \n, o resultado seria diferente:

irb(main):009> puts "Olá mundo! \n IRB está funcionando."
Olá mundo! 
 IRB está funcionando.
=> nil
irb(main):010> 

Nesse caso, a mensagem “IRB está funcionando.” apareceu na linha de baixo, mas com um espaço antes dela, porque colocamos um espaço entre o \n e o texto então o IRB respeitou esse espaço.

Testando números no IRB


O que acontece se digitarmos no IRB o seguinte comando:

puts "10 + 10"

O resultado será:

10 + 10
=> nil

Ou seja, o IRB apenas mostrou o texto “10 + 10” na tela, mas não fez a conta de somar 10 + 10. Isso aconteceu porque colocamos os números dentro de aspas, então o IRB interpretou tudo como texto e não como uma operação matemática.

Para fazer o IRB calcular a soma de 10 + 10, precisamos digitar o comando sem aspas, assim:

irb(main):015> puts 10 + 10
20
=> nil
irb(main):016> 

Assim o IRB fez a conta e mostrou o resultado 20 na tela.

Podemos fazer outras operações matemáticas no IRB, até mesmo sem usar o comando puts. Por exemplo:

irb(main):016> 10 + 10
=> 20
irb(main):017> 10 - 5
=> 5
irb(main):018> 10 * 10
=> 100
irb(main):019> 10 / 10
=> 1
irb(main):020> 

No exemplo acima, fizemos várias operações matemáticas: soma, subtração, multiplicação e divisão. O IRB mostrou o resultado de cada operação após o símbolo =>.

Observe que usamos:

  • * (asterisco) para multiplicação
  • / (barra) para divisão
  • - (menos ou hífen) para subtração
  • + (mais) para adição

Esses são os símbolos matemáticos padrão não só no Ruby, mas em muitas outras linguagens de programação também.

Na série Computação para Iniciantes foi abordada a ideia de que o computador é uma máquina elétrica que segue instruções. A forma de representar símbolos, não só matemáticos, não é ilimitada.

Por isso precisamos combinar símbolos e comandos para representar ações que queremos que o computador execute.

Por isso frequentemente usamos símbolos matemáticos como +, -, * e / para representar operações matemáticas em linguagens de programação como o Ruby.

Combinando texto e números no IRB


Agora que já sabemos como mostrar mensagens na tela e fazer operações matemáticas no IRB, vamos ver como combinar texto e números em um único comando.

irb(main):006> puts "Vamos somar 10 + 10. \nO resultado do cálculo é #{10 + 10}."
Vamos somar 10 + 10. 
O resultado do cálculo é 20.
=> nil

O comando acima usa o #{}, para inserir o resultado da operação matemática dentro da mensagem de texto. O que está dentro das chaves {} é avaliado como código Ruby para ser calculado, não como texto apenas para ser exibido e o resultado é inserido na mensagem junto com o restante do texto que está fora das chaves e este sim é tratado como texto normal.

Outras operações podem ser feitas como:

irb(main):007> puts "Vamos multiplicar 10 vezes 10. \nO resultado do cálculo é #{10 * 10}."
Vamos multiplicar 10 vezes 10. 
O resultado do cálculo é 100.
=> nil

No exemplo acima, usamos o #{} para calcular a multiplicação de 10 vezes 10 e inserir o resultado na mensagem de texto.

Outro exemplo:

irb(main):008> puts "Vamos subtrair 10 menos 10. \nO resultado do cálculo é #{10 - 10}."
Vamos subtrair 10 menos 10. 
O resultado do cálculo é 0.
=> nil

No exemplo acima, usamos o #{} para calcular a subtração de 10 menos 10 e inserir o resultado na mensagem de texto.

Outro exemplo:

irb(main):009> puts "Vamos dividir 10 por 10. \nO resultado do cálculo é #{10 / 10}."
Vamos dividir 10 por 10. 
O resultado do cálculo é 1.
=> nil
irb(main):010> 

No exemplo acima, usamos o #{} para calcular a divisão de 10 por 10 e inserir o resultado na mensagem de texto.

Resumo


Neste artigo, exploramos o IRB, um ambiente interativo para programação em Ruby. Vimos como iniciar o IRB, testar comandos básicos como puts para mostrar mensagens na tela, fazer operações matemáticas e combinar texto e números em um único comando.

O IRB é uma ferramenta poderosa para aprender e experimentar com o código Ruby, permitindo que você veja os resultados imediatamente.

A partir de agora vamos usar o IRB para trabalhar alguns conceitos de programação em Ruby mais a frente. Experimente usar o IRB para praticar os comandos que aprendemos até agora, teste os retornos e veja como o Ruby responde aos seus comandos.

O importante é adquirir familiaridade com o ambiente e com a linguagem, para que você se sinta confortável, pois isso será necessário mais adiante.