Introdução
O programa “Olá, Mundo!” é uma tradição clássica e venerada na programação de computadores. É um 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 peça ao usuário o seu nome. Em seguida, você usará o nome na saudação. Quando terminar o tutorial, você terá um programa que se parece com isso quando é executado:
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 nano
e crie um novo arquivo:
- nano hello.rb
Assim que o arquivo de texto abrir na janela do terminal, você irá digitar seu programa:
puts "Hello, World!"
Vamos analisar os diferentes componentes do código.
puts
é um método Ruby que diz ao computador para imprimir algum texto na tela.
O método puts
é seguido por uma sequência de caracteres — Olá, Mundo!
, cercada por aspas. Qualquer caractere que esteja dentro das aspas é chamado de string. O método puts
imprimirá esta string na tela quando o programa for executado.
Algumas métodos, como o método puts
, são incluídos em Ruby por padrão. Esses métodos integrados estão sempre disponíveis quando você cria programas em Ruby. Você também pode definir seus próprios métodos.
Salve e saia do nano
digitando as teclas CONTROL
e X
, e quando for solicitado para salvar o arquivo, pressione y
e tecle ENTER
.
Vamos testar o seu programa.
Passo 2 — Executando um Programa em Ruby
Com o seu programa “Hello, World!” escrito, você está pronto para executar o programa. 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.
Executar o 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 "Hello, World!"
chamando a função puts
. O valor da string Hello, World!
foi passado para a função.
Neste exemplo, a string Hello, World!
também é chamada de argumento, pois é um valor que é passado para um método.
As aspas que estão dos dois 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
Toda vez que você executa seu programa, ele produz a mesma saída. Vamos solicitar o nome da pessoa que está executando o programa. 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 insira seu nome:
puts "Please enter your name."
Mais uma vez, 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 envolvida. Vamos analisá-la.
O método gets
diz ao computador para esperar entrada do teclado. Isso pausa o programa, permitindo que o usuário insira qualquer texto que deseje. O programa continuará quando o usuário pressionar a tecla ENTER
em seu teclado. Todos os pressionamentos de tecla, incluindo o pressionamento de tecla ENTER
, são então capturados e convertidos em uma string 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.
Finalmente, 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 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 digitar seu nome, então insira 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 pressionamentos 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ê disse a ele para fazer; está exibindo o texto que você inseriu, incluindo essa nova linha. Só que não é o que você queria. Mas você pode corrigir isso.
Abra o arquivo greeting.rb
no seu editor:
- nano greeting.rb
Localize esta linha no seu programa:
name = gets
E modifique-o para que fique 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, ele 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, depois de digitar 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 do usuário e a imprime na tela.
Conclusão
Agora que você sabe como solicitar entrada, processar os resultados e exibir a saída, tente expandir seu programa ainda mais. Por exemplo, pergunte pela cor favorita do usuário e faça o programa dizer que sua cor favorita é vermelho. Você pode até tentar usar essa mesma técnica para criar um programa de Mad-Lib simples.
Source:
https://www.digitalocean.com/community/tutorials/how-to-write-your-first-ruby-program