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:
OutputPlease 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:
- Cómo instalar Ruby y configurar un entorno de programación local en macOS
- Cómo instalar Ruby y configurar un entorno de programación local en Ubuntu 16.04
- Cómo instalar Ruby y configurar un entorno de programación local en Windows 10
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:
- nano hello.rb
Una vez que el archivo de texto se abra en la ventana del terminal, escribirás tu programa:
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.
- ruby hello.rb
El programa se ejecutará y mostrará esta salida:
OutputHello, 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
:
- nano greeting.rb
Primero, agrega esta línea, que le pide al usuario que ingrese su nombre:
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:
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:
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:
- 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:
OutputPlease 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:
- nano greeting.rb
Localiza esta línea en tu programa:
name = gets
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:
- ruby greeting.rb
Esta vez, después de ingresar tu nombre y presionar ENTER
, obtienes la salida esperada:
OutputPlease 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