viernes, 25 de enero de 2013

Echando a andar (1 de 2)

ECHANDO A ANDAR

El intérprete interactivo

Ya instalaste Ruby en tu equipo ¿verdad? Abre ahora un intérprete de comandos con Ruby (en Windows) o simplemente una Shell (en Linux) y escribe “irb” y pulsa Intro:



Entramos en un intérprete de Ruby que nos va a permitir probar cosas. Escribe ahora “2+2” y pulsa Intro:




Eso de “pulsa Intro” no lo voy a repetir más. Ya sabes: al final de cada instrucción hay que pulsar Intro para obtener la respuesta. En este caso, nos dice:
=> 4

El intérprete evalúa la expresión que le hemos dado y nos da su resultado. En Ruby, las instrucciones son siempre expresiones que retornan algo. Y si no tienen valor alguno que devolvernos, nos retornará uno especial llamado nil.

El valor nil viene a significar “ningún objeto” u “objeto inexistente” o, a veces, sencillamente “nada”.

En Ruby, todo (o casi todo) es un objeto. Incluso el número 2. Podemos conocer su clase escribiendo “2.class”:



O sea, 2 es una instancia (un objeto) de la clase “Fixnum”. Fíjate en que el nombre de la clase comienza con una letra mayúscula y recuerda que debes seguir esa regla en el futuro.

Cada clase tiene una serie de métodos, de acciones que puedes realizar ella y/o sus objetos. Con “2.methods” te sale una lista:



Cadenas

¡Vaya lío!... mejor cambiamos de tema. Estoooo… Hay muchas clases predefinidas en Ruby.  Por ejemplo, como en otros lenguajes de programación hay cadenas de texto. Un ejemplo de cómo usarlas sería:

var = "Esto es una cadena"



En este caso, var es una variable. Fíjate que su nombre comienza por una letra minúscula. En ella almacenamos la cadena “Esto es una cadena”.

Pero fíjate en el resultado obtenido como resultado de la asignación:  eso nos indica, por un lado, que cuando realizamos una asignación de valor como ésta, la asignación es, en sí misma, una expresión y, por otro, que el valor que retorna es el mismo que asignamos a la variable.

Lo cual implica que se puede asignar un mismo valor a varias variables de una sola vez:




Ahora, var1, var2, var3 y var4 tendrán el mismo valor que var. O sea: “Esto es una cadena”. Podemos comprobarlo evaluándolas. Por ejemplo, para var3:



continuará...

Qué es Ruby y todo eso

INTRODUCCIÓN

¿Ruby?

No sé cómo llegaste hasta aquí, pero casi seguro que fue buscando algo sobre como programar en Ruby. Si es así, supongo que ya sabrás de qué va esto.

En otro caso, baste por ahora con señalar que Ruby es un lenguaje de programación orientado a objetos . Eso sí, uno muy interesante. Al menos, a mí me gusta.

¿Por qué Ruby?

Sí, pero… ¿por qué vas tú a elegir Ruby?

Cada cual tendrá sus razones. La mía, en su día, fue que Metasploit Framework está escrito en Ruby. Pero después fui encontrando otras: su potencia, lo natural que resulta de escribir (y de leer) cuando te acostumbras, el que esté disponible para distintos sistemas operativos,…

Y, además, en 2012 fue estandarizado por la ISO:
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59579

Ya me dirás tú qué le ves.

¿Y dónde lo consigo?

IMPORTANTE: ¡Instálate Ruby antes de seguir! La mejor manera de aprender es prácticar.

Ruby tiene su página web oficial:
http://www.ruby-lang.org

Y con versión en español:
http://www.ruby-lang.org/es/

El apartado de descargas (o downloads en la versión inglesa) enumera varias formas de obtener e instalar Ruby en tu ordenador. Entre ellas, la de descargarte el código fuente y compilarlo. De todos modos, hay otras más sencillas, de esas de descargar y hacer clic o de instalar tal o cual paquete en tu sistema.

Si usas Windows, la opción recomendada es RubyInstaller, ya que no sólo instala Ruby sino también documentación y otras cosas interesantes:
http://rubyinstaller.org/downloads/

Eso sí, si no le dices otra cosa durante la instalación, RubyInstaller no modifica la variable de entorno Path. Pero no te asustes: tampoco es necesario modificarla manualmente. Entre los accesos directos que crea, existe uno denominado “Start Command Prompt with Ruby”.

Abrelo y…


¿Pero qué co@#!!%%%%!!!nes es esto?

Te sale una ventana rara, ¿verdad? Posiblemente de color negro…



Eso es un intérprete de comandos. Hace años, los ordenadores eran así. Y confieso que soy uno de esos “pantallas negras” a los que no les molesta. Eso de las pantallas negras tiene su aquello.

Sí, Ruby es, en principio, un lenguaje de programación con interfaz orientada a caracteres. En principio, que ya se verán algunas cosas más adelante sobre este tema. ¿Se me olvidó comentártelo antes? Bueno,… es que no quería espantarte.

De todos modos, ya que lo has instalado, no pierdes nada por probarlo (en parte, de ahí mi urgencia por que lo instalaras). ¡Ánimo y nos vemos en la próxima!

Si llegaste hasta aquí...

Si llegaste hasta aquí, será porque buscabas algo sobre Ruby.

No sé que significa Ruby para tí: si un nombre de mujer, una piedra preciosa, unas Montañas o una película. Pero si era una de esas cosas, lo siento. Ésta no es tu página.

Este blog trata sobre el lenguaje de programación Ruby. ¿Era eso lo que buscabas? ¡Bien!

Y, si no, ya que estás aquí... te invito a echar un vistazo.

Eso sí, no esperes un manual de Ruby por entregas. No es precisamente eso lo que tengo en mente para este blog.

Verás, hace unas semanas encontré una vieja libreta de cuando yo estaba aprendiendo Ruby. ¡Un verdadero cofre del tesoro! Y me di cuenta que a veces arreglas un problema y después te olvidas de cómo lo hiciste. Por eso decidí poner mis notas en orden e irlas subiendo a Internet, que es donde yo siempre encuentro las cosas.

Y, si de camino, a alguien le sirve para algo... me alegraría un montón saberlo.

Saludos.