Introdução
O programa “Olá, Mundo!” é uma tradição clássica e honrada na programação de computadores. É um primeiro programa pequeno e completo para iniciantes, e é uma boa maneira de garantir que seu ambiente esteja configurado corretamente.
Este tutorial irá guiá-lo na criação deste programa em Ruby. No entanto, para tornar o programa mais interessante, você modificará o tradicional programa “Olá, Mundo” para que ele pergunte ao usuário o nome dele. Você então usará o nome na saudação. Quando terminar o tutorial, você terá um programa que se parecerá com isso quando você o executar:
OutputPlease enter your name.
Sammy
Hello, Sammy! I'm Ruby!
Pré-requisitos
Você deve ter um ambiente de desenvolvimento Ruby local configurado em seu computador. Configure um seguindo um destes tutoriais:
- Como Instalar o Ruby e Configurar um Ambiente de Programação Local no macOS
- Como Instalar o Ruby e Configurar um Ambiente de Programação Local no Ubuntu 16.04
- Como Instalar o Ruby e Configurar um Ambiente de Programação Local no Windows 10
Passo 1 — Escrevendo o Programa Básico “Olá, Mundo!”
Para escrever o programa “Olá, Mundo!”, abra um editor de texto de linha de comando como o nano
e crie um novo arquivo:
- nano hello.rb
Assim que o arquivo de texto abrir na janela do terminal, você irá digitar o seu programa:
puts "Hello, World!"
Vamos analisar os diferentes componentes do código.
puts
é um método do Ruby que indica ao computador para imprimir algum texto na tela.
O método puts
é seguido por uma sequência de caracteres — Olá, Mundo!
, entre aspas. Quaisquer caracteres dentro de aspas são chamados de string. O método puts
irá imprimir essa string na tela quando o programa for executado.
Alguns métodos, como o método puts
, estão incluídos no Ruby por padrão. Esses métodos integrados estão sempre disponíveis quando você cria programas Ruby. Você também pode definir seus próprios métodos.
Salve e saia do nano
digitando as teclas CONTROL
e X
, e quando solicitado a salvar o arquivo, pressione y
e pressione ENTER
.
Vamos testar seu programa.
Passo 2 — Executando um Programa Ruby
Com seu programa “Olá, Mundo!” escrito, você está pronto para executá-lo. Você usará o comando ruby
, seguido pelo nome do arquivo que acabou de criar.
- ruby hello.rb
O programa será executado e exibirá esta saída:
OutputHello, World!
Vamos explorar o que realmente aconteceu.
A execução do comando ruby
iniciou o interpretador Ruby. O interpretador Ruby leu o arquivo que você especificou e avaliou seu conteúdo. Ele executou a linha puts "Olá, Mundo!"
chamando a função puts
. O valor da string Olá, Mundo!
foi passado para a função.
Neste exemplo, a string Olá, Mundo!
também é chamada de um argumento, pois é um valor que é passado para um método.
As aspas que estão em ambos os lados de Olá, Mundo!
não foram impressas na tela porque são usadas para dizer ao Ruby que elas contêm uma string. As aspas delimitam onde a string começa e termina.
O programa funciona, mas você pode torná-lo mais interativo. Vamos explorar como.
Passo 3 — Solicitando Entrada
Cada vez que você executa seu programa, ele produz a mesma saída. Vamos pedir à pessoa que está executando o seu programa o nome delas. Você pode então usar esse nome na saída.
Em vez de modificar seu programa existente, crie um novo programa chamado saudacao.rb
no editor nano
:
- nano greeting.rb
Primeiro, adicione esta linha, que solicita ao usuário que digite seu nome:
puts "Please enter your name."
Novamente, você usa o método puts
para imprimir algum texto na tela.
Agora adicione esta linha para capturar a entrada do usuário:
puts "Please enter your name."
name = gets
Esta próxima linha é um pouco mais complexa. Vamos dividi-la.
O método gets
diz ao computador para esperar a entrada do teclado. Isso pausa o programa, permitindo que o usuário digite qualquer texto que desejar. O programa continuará quando o usuário pressionar a tecla ENTER
no teclado deles. Todas as teclas pressionadas, incluindo a tecla ENTER
, são então capturadas e convertidas em uma sequência de caracteres.
Você quer usar esses caracteres na saída do seu programa, então você os salva atribuindo a string a uma variável chamada `name
`. O Ruby armazena essa string na memória do seu computador até que o programa termine.
Por fim, adicione esta linha para imprimir a saída:
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"
Você usa o método puts
novamente, mas desta vez você usa um recurso do Ruby chamado interpolação de string, que permite você pegar o valor atribuído a uma variável e colocá-lo dentro de uma string. Em vez da palavra name
, você obterá o valor que salvou na variável name
, que deve ser o nome do usuário.
Salve e saia do nano
pressionando CTRL+X
, e pressione y
quando solicitado para salvar o arquivo, depois pressione ENTER
.
Agora execute o programa com este comando:
- ruby greeting.rb
Você será solicitado a inserir seu nome, então insira-o e pressione ENTER
. A saída pode não ser exatamente o que você espera:
OutputPlease enter your name.
Sammy
Hi, Sammy
! I'm Ruby!
Em vez de Olá, Sammy! Eu sou Ruby!
, há uma quebra de linha logo após o nome.
O programa capturou todos os seus toques de tecla, incluindo a tecla ENTER
que você pressionou para dizer ao programa para continuar. Em uma string, pressionar a tecla ENTER
cria um caractere especial que cria uma nova linha. A saída do programa está fazendo exatamente o que você mandou fazer; está exibindo o texto que você digitou, incluindo essa nova linha. Apenas não é o que você queria. Mas você pode consertar isso.
Abra o arquivo greeting.rb
no seu editor:
- nano greeting.rb
Localize esta linha em seu programa:
name = gets
E modifique-o para que pareça assim:
name = gets.chop
Isso usa o método chop
do Ruby na string que capturamos com gets
. O método chop
remove o último caractere de uma string. Neste caso, remove o caractere de nova linha no final da string criada quando pressionamos ENTER
.
Salve e saia do nano
. Pressione CTRL+X
, depois pressione y
quando solicitado para salvar o arquivo.
Execute o programa novamente:
- ruby greeting.rb
Desta vez, após você inserir seu nome e pressionar ENTER
, você obtém a saída esperada:
OutputPlease enter your name.
Sammy
Hi, Sammy! I'm Ruby!
Agora você tem um programa Ruby que recebe entrada de um usuário e imprime na tela.
Conclusão
Agora que você sabe como solicitar entrada, processar os resultados e exibir saída, tente expandir ainda mais o seu programa. Por exemplo, pergunte a cor favorita do usuário e faça o programa dizer que sua cor favorita é vermelho. Você também pode tentar usar a mesma técnica para criar um simples programa de Mad-Lib.
Source:
https://www.digitalocean.com/community/tutorials/how-to-write-your-first-ruby-program