viernes, 18 de octubre de 2013

Tutorial Ruby en Linux introduccion

Otro lenguaje de programación que posiblemente deje en el sitio,de hecho este lenguaje tenia un blog especial para el como Lua pero no escribía mucho, ademas de que lo mas común seria tener un sitio de un lenguaje corriendo sobre el mismo,por el ejemplo con RoR,pero no me gusta mucho la programación web así que por eso no le hecho muchas ganas a crear un sitio desde cero,de hecho se podrán haber dado cuenta con el simple hecho de que yo uso blogger en vez de wordpress o movabletype o crear un sitio con Django o RoR de hecho si se dan cuenta de los mismos tutoriales de los lenguajes que hay no hay ninguno sobre desarrollo web,de hecho podrán ver mi poco interés por el desarrollo web al ver los mas de 300 errores que tiene esta plantilla :P.

Bien este no es un tutorial en si ya que solo es para probar las estadisticas,pero vamos a comenzar.

Ruby es un lenguaje de script un tanto influido por Perl,es creado por Yukihiro Matsumoto(Matz) el cual hizo publica la primera version en 1995,la cual comenzó a trabajar desde 1993, lenguaje de programación interpretado, reflexivo y orientado a objetos.

Ruby en lo personal me gusta ya que es muy facil hacer cosas con el al igual que con Python,si conocen la sintaxis de Perl y de Python veran que Ruby es como si fuera una mezcla de ambos,vean:

Por ejemplo la forma de definir clases de python:

class hola():
   def __init__(self,hola,mundo):
        self.hola = hola
        self.mundo = mundo
   def ver(self):
      print self.hola+" "+self.mundo

ob = hola("Hola","Mundo")

ob.ver()

En ruby :

class Hola
    def initialize(hola,mundo)
       @hola = hola
       @mundo = mundo
    end
    def ver()
        print @hola+" "+@mundo+"\n"
    end
end

ob = Hola.new("Hola","Mundo")

ob.ver()

En Perl:

package Hola;

sub new 
{
    my $this = shift;
    my $class = ref($this) || $this;
    my $self = {hola => shift,mundo => shift};
    bless $self,$class;
    return $self;
}
                   
sub ver 
{
    my $self = shift;
    print $self->{hola}." ".$self->{mundo}."\n";
}

my $ob = Hola->new("Hola","Mundo");
                          
$ob->ver();

Bien,vamos a comezar primero que nada necesitamos instalar ruby,la version estable es la 2.0.0 pero en muchas distribuciones de Linux tenemos la version 1.8 y nos servira para este tutorial así que instalamos:

Enterminal:
sudo apt-get install ruby

Los archivos de ruby son de extensión .rb o .rbw podemos ejecutarlos con ruby directamente asi:

ruby archivo.rb

O con hashbang en modo de ejecucion,primero añadimos un bang:

#!

Luego añadimos la ruta de ruby pero como varia dependiendo los sistemas haremos que env lo encuentre,así que mejor ponemos la ruta de env y le pasamos como parámetro el nombre de ruby,asi queda el hashbang:
#!/usr/bin/env ruby

Si no queremos usar un archivo,podemos usar la shell interactiva de ruby ibr,es similar a la de python solo que esta se abre tecleando:

irb

El programa hola mundo es muy sencillo a diferencia de lo que veimos en Java en el tutorial pasado,para imprimir texto desde la STDOUT(salida estándar),solo debemos escribir:

puts "Hola Mundo"



Y listo nuestro primer programa :D,puts es como print solo que añade un (\n) al final para nueva linea.

Vamos a ver los tipos básicos:

my_num =   25  # numero entero

my_num_r = 10.7 # numero real

my_boolean = true    #  Boleano verdadero = true falso =  false

my_string =  "Ruby"   # Cadena

Ejemplo:

#!/usr/bin/ruby

my_num =   25  # numero
my_num_r = 10.7 # numero real
my_boolean = true    #  Boleano
my_string =  "Ruby"   # Cadena

puts "Tipos de datos :"
print  "Numero entero : ", my_num, "\n"
print  "Numero real : ", my_num_r, "\n"
print "Boolean: ", my_boolean, "\n"
print "Cadena: ", my_string

En ruby podemos añadir comentarios a nuestro codigo de dos maneras,la primera es en una sola linea con el hash o gato:

# Un comentario
De esta manera no hará caso a lo que escribamos a menos que sea un bang.

La otra forma es multilinea con las palabras especiales begin/end:

=begin
Un comentario
Otra linea
=end

Esto es lo mismo que vimos en Java,no es tutorial en si solo es un prueba,pero si dejo ruby lo veremos mas a fondo.

2 comentarios:

  1. Las diferencias entre Puts y Print?

    Ambas imprimen textos en la pantalla pero, se utilizan ambas para ocasiones diferentes?

    Ando algo confundido ahi :/

    Saludos!

    ResponderBorrar
  2. puts añade una nueva linea al final,por ejemplo:

    puts "Hola mundo"

    es lo mismo que

    print "Hola mundo\n"

    Por ejemplo en un bucle que cuente del 1 hasta el 3,con print se vería así:

    123

    Y con puts:

    1
    2
    3

    Es como print y io.write de Lua.

    Saludos :D.

    ResponderBorrar

Los comentarios serán revisados antes de ser publicados.