Cómo Escribir Tu Primer Programa en Ruby

Introducción

El programa “¡Hola, Mundo!” es una tradición clásica y venerada en la programación de computadoras. Es un primer programa pequeño y completo para principiantes, y es una buena manera de asegurarse de que su entorno esté configurado correctamente.

Este tutorial te guiará a través de la creación de este programa en Ruby. Sin embargo, para hacer el programa más interesante, modificarás el tradicional programa “¡Hola, Mundo!” para que le pida al usuario su nombre. Luego, usarás el nombre en el saludo. Cuando hayas terminado el tutorial, tendrás un programa que se verá así cuando lo ejecutes:

Output
Please enter your name. Sammy Hello, Sammy! I'm Ruby!

Requisitos previos

Deberías tener un entorno de desarrollo Ruby local configurado en tu computadora. Configúralo siguiendo uno de estos tutoriales:

Paso 1 — Escribir el Programa Básico “¡Hola, Mundo!”

Para escribir el programa “¡Hola, Mundo!”, abre un editor de texto de línea de comandos como nano y crea un archivo nuevo:

  1. nano hello.rb

Una vez que el archivo de texto se abra en la ventana del terminal, escribirás tu programa:

hello.rb
puts "Hello, World!"

Vamos a analizar los diferentes componentes del código.

puts es un método de Ruby que le indica a la computadora que imprima un texto en la pantalla.

El método puts va seguido de una secuencia de caracteres — ¡Hola, Mundo!, encerrados entre comillas. Cualquier caracter que esté dentro de comillas se llama cadena. El método puts imprimirá esta cadena en la pantalla cuando se ejecute el programa.

Algunos métodos, como el método puts, están incluidos en Ruby por defecto. Estos métodos integrados están siempre disponibles cuando creas programas en Ruby. También puedes definir tus propios métodos.

Guarda y sal de nano escribiendo las teclas CONTROL y X, y cuando se te pida guardar el archivo, presiona y y pulsa ENTER.

Vamos a probar tu programa.

Paso 2 — Ejecutando un Programa en Ruby

Con tu programa “¡Hola, Mundo!” escrito, estás listo para ejecutar el programa. Utilizarás el comando ruby, seguido del nombre del archivo que acabas de crear.

  1. ruby hello.rb

El programa se ejecutará y mostrará esta salida:

Output
Hello, World!

Exploremos lo que realmente sucedió.

Ejecutar el comando ruby inició el intérprete de Ruby. El intérprete de Ruby leyó el archivo que especificaste y evaluó su contenido. Ejecutó la línea puts "¡Hola, Mundo!" llamando a la función puts. El valor de la cadena ¡Hola, Mundo! se pasó a la función.

En este ejemplo, la cadena ¡Hola, Mundo! también se llama un argumento, ya que es un valor que se pasa a un método.

Las comillas que están a ambos lados de Hello, World! no se imprimieron en la pantalla porque se utilizan para indicarle a Ruby que contienen una cadena. Las comillas delimitan dónde comienza y termina la cadena.

El programa funciona, pero puedes hacerlo más interactivo. Vamos a explorar cómo.

Paso 3: Solicitar entrada

Cada vez que ejecutas tu programa, produce la misma salida. Vamos a pedirle al usuario que ejecute tu programa que ingrese su nombre. Luego puedes usar ese nombre en la salida.

En lugar de modificar tu programa existente, crea un nuevo programa llamado greeting.rb en el editor nano:

  1. nano greeting.rb

Primero, agrega esta línea, que le pide al usuario que ingrese su nombre:

greeting.rb
puts "Please enter your name."

Una vez más, usa el método puts para imprimir texto en la pantalla.

Ahora agrega esta línea para capturar la entrada del usuario:

greeting.rb
puts "Please enter your name."
name = gets

Esta siguiente línea es un poco más complicada. Vamos a desglosarla.

El método gets le indica a la computadora que espere la entrada desde el teclado. Esto pausa el programa, permitiendo al usuario ingresar cualquier texto que deseen. El programa continuará cuando el usuario presione la tecla ENTER en su teclado. Todas las pulsaciones de teclas, incluida la pulsación de ENTER, se capturan y convierten en una cadena de caracteres.

Quieres usar esos caracteres en la salida de tu programa, así que guardas esos caracteres asignando la cadena a una variable llamada name. Ruby almacena esa cadena en la memoria de tu computadora hasta que el programa termine.

Finalmente, agrega esta línea para imprimir la salida:

greeting.rb
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"

Usas el método puts nuevamente, pero esta vez utilizas una característica de Ruby llamada interpolación de cadenas, que te permite tomar el valor asignado a una variable y colocarlo dentro de una cadena. En lugar de la palabra name, obtendrás el valor que guardaste en la variable name, que debería ser el nombre del usuario.

Guarda y sale de nano presionando CTRL+X, y presiona y cuando se te solicite guardar el archivo, luego presiona ENTER.

Ahora ejecuta el programa con este comando:

  1. ruby greeting.rb

Se te pedirá tu nombre, así que ingrésalo y presiona ENTER. La salida podría no ser exactamente lo que esperas:

Output
Please enter your name. Sammy Hi, Sammy ! I'm Ruby!

En lugar de ¡Hola, Sammy! ¡Soy Ruby!, hay un salto de línea justo después del nombre.

El programa capturó todos tus pulsaciones de teclas, incluida la tecla ENTER que presionaste para indicar al programa que continuara. En una cadena, al presionar la tecla ENTER se crea un carácter especial que crea una nueva línea. La salida del programa está haciendo exactamente lo que le indicaste que hiciera; está mostrando el texto que ingresaste, incluida esa nueva línea. Simplemente no es lo que querías. Pero puedes solucionarlo.

Abre el archivo greeting.rb en tu editor:

  1. nano greeting.rb

Localiza esta línea en tu programa:

greeting.rb
name = gets

greeting.rb
name = gets.chop

Esto utiliza el método chop de Ruby en la cadena que capturamos con gets. El método chop elimina el último carácter de una cadena. En este caso, elimina el carácter de nueva línea al final de la cadena creado cuando presionamos ENTER.

Guarda y sale de nano. Presiona CTRL+X, luego presiona y cuando se te solicite guardar el archivo.

Ejecuta el programa nuevamente:

  1. ruby greeting.rb

Esta vez, después de ingresar tu nombre y presionar ENTER, obtienes la salida esperada:

Output
Please enter your name. Sammy Hi, Sammy! I'm Ruby!

Ahora tienes un programa Ruby que recibe entrada de un usuario y la imprime en pantalla.

Conclusión

Ahora que sabes cómo solicitar entrada, procesar los resultados y mostrar la salida, intenta expandir tu programa aún más. Por ejemplo, pregunta por el color favorito del usuario, y haz que el programa diga que su color favorito es rojo. Incluso podrías intentar usar esta misma técnica para crear un simple programa de Mad-Lib.

Source:
https://www.digitalocean.com/community/tutorials/how-to-write-your-first-ruby-program