Para guardar un número o una cadena en la memoria de tu computadora y usarla pasteriormente en un programa, necesitas darle un nombre. Con frecuencia, los programadores le llaman a este proceso “asignación” y se refieren a los nombres asignados como “variables”.

1 s = 'Otra vez....Hola Mundo!'
2 x = 10

Las variables locales son palabras comunes; deben comenzar con una letra minúscula o un guión bajo ( _ ) y deben contener sólo letras, números y guiones. Cuando Ruby identifica una palabra común, la interpreta de tres maneras diferentes:

  • una variable local,
  • la llamada a un método o
  • una palabra reservada.

Las palabras reservadas (keywords) no pueden usarse como nombres de variables. def es una palabra reservada; para lo único que puede usarse es para comenzar la definición de un método. Gran parte del código escrito en Ruby involucra cláusulas condicionales que comienzan con la palabra if; sería muy confuso permitir el uso de la palabra if como nombre de variable.

Las llamadas a métodos (method calls) pueden ser palabras comunes como empieza_aqui. puts es una llamada a un método, lo mismo que print. Ruby decide cómo interpretar una palabra común de la siguiente manera:

  • Si hay un símbolo de igual a la derecha de la palabla ( = ), es una variable local que está siendo asignada.
  • Si la palabra es una palabra reservada la interpreta como tal. (Ruby tiene una lista interna de estas palabras y es así como las reconoce).
  • Si no es ninguna de las anteriores, asume que la palabra es una llamada a un método.

El programa p004usodecadenas.rb nos muestra un poco más del uso de las cadenas:

 1 # Definición de una constante
 2 PI = 3.1416
 3 puts PI
 4 
 5 # Definición de una cadena
 6 miCadena = 'A Shatim le gusta su ciudad, Pune'
 7 puts miCadena
 8 
 9 =begin
10   Canversiones
11   .to_i, .to_f, .to_s
12 =end
13 var1 = 5
14 var2 = '2'
15 puts var1 + var2.to_i
16 
17 # << agregar
18 a = 'hola '
19 a <<'mundo.
20 Me gusta este mundo...'
21 puts a
22 
23 =begin
24   << marca el inicio de una cadena y 
25   debe ser seguido por un delimitador cualquiera
26   La cadena comienza después del salto de línea
27   y termina cuando Ruby encuentra el nuevamente el
28   delimitador en otra línea.
29 =end
30 a = <<LIMITE
31 Esta es una cadena
32 Y una segunad linea
33 LIMITE
34 puts a

En la expresión

1 x = '100'.to_i

el punto quiere decir que el mensaje to_i está siendo enviado a la cadena '100', o bien, que el método to_i está siendo llamado para la cadena '100'. Entonces, cuando veas un punto en una posición que parece inexplicable, debes interpretarlo como un mensaje (en la parte de la derecha ) siendo enviado o un objeto (en la parte izquierda).

Resumen

Revisa la lista de puntos importantes que necesitas tener presentes cuando hayas terminado los temas: Introducción, Instalación, Primer programa en Ruby, Algunas características, Números, Cadenas, Variables y asignación.