Ruby (Lenguaje Interpretado)

Presenter Notes

Ruby es..

  • Un lenguaje de programación interpretado.
  • Creado por Yukihiro “Matz” Matsumoto en 1995.
  • Influido por Perl, Smalltalk, Eiffel, Ada, y Lisp.
  • En Ruby todo es un objeto.
  • Tipado dinámico y fuertemente tipado.
  • Es altamente portable, compatible con una gran gama de SO.

alt text

Ejemplo del famoso "Hola Mundo", en Ruby

1 puts "Hola Mundo, desde Ruby"

Presenter Notes

Características de Ruby

  • Todos los tipos de datos son objetos.
  • Toda función es un método.
  • Las variables siempre son referencias a objetos.
  • Ruby no soporta herencia múltiple, pero se puede hacer uso de "mixins" para tener métodos de distintas clases.
  • Cuatro niveles de ámbito de variable: global, clase, instancia y local.
  • Manejo de excepciones.
  • Expresiones regulares nativas.
  • Recolección de basura autom´tica.
  • Soporta alteración de objetos en tiempo de ejecución.

Presenter Notes

Ejemplo de clase

 1 class Sistema_Programa
 2     def ejemplo
 3         puts "Hola Mundo"
 4     end
 5 end
 6 
 7 variable_instancia = Sistema_Programa.new
 8 variable_instancia.ejemplo
 9 
10 class Sistema_Programa
11     def ejemplo(arg)
12         puts arg
13     end
14 end
15 
16 variable_instancia = Sistema_Programa.new
17 variable_instancia.ejemplo("Mi nota sera 20")

Si se desea colocar un constructor en una clase se debe definir el método "initialize".

Presenter Notes

Entrada y Salida de Datos por pantalla

 1 puts "I/O Ruby"
 2 def get_nombre
 3     puts "Este metodo se llama " #Se imprime en otra linea
 4     print "get_nombre" #Se imprime en la misma linea
 5     puts "Inserte su nombre"
 6     nombre = gets
 7     puts "Su nombre es " + nombre
 8 end
 9 
10 get_nombre

Presenter Notes

Asignaciones

1 # Asignacion simple
2 a = 1
3 # Asignacion en paralelo o multiple
4 a, b = 1, 2
5 # Atajos
6 a += 1
7 b -= 1
8 b *= 2
9 b /= 2

Presenter Notes

Arrays (Listas)

Los arrays en Ruby se definen a través de corchetes. Así que para definir un vector se debe definir una variable seguida de valores dentro de corchetes. Ruby al ser de tipado dinámico acepta cualquier tipo de dato en un array o lista.

Ejemplo:

1 variable = [1, 2, 3]
2 #Para mostrar en pantalla un valor por linea se usa puts
3 puts variable
4 variable = [1, 2, "Hola mundo"]
5 puts variable

Presenter Notes

Bucles

For

1 variable = [1,2,3]
2 for el in variable
3     print el + " "
4 end
5 #Salida 1 2 3

While

1 variable = 0
2 while(variable < 100)
3     variable += 10
4 end
5 puts variable #100

Loop

1 variable = 0
2 loop do
3     break variable if (variable > 100)
4     variable += 10
5 end
6 #Salida 110

Presenter Notes

Excepciones

Una excepción es un tipo especial de objeto de la clase Exception. Lanzar una excepción significa parar la ejecución de un programa para salir del mismo o para tratar con el problema que se ha producido.

 1 def raise_and_rescue  
 2     begin
 3         puts 'Estoy antes del raise'
 4         raise 'Un error ha ocurrido' # simulamos un error
 5         puts 'Estoy después del raise' 
 6     rescue
 7         puts 'Estoy rescatado del error.'
 8     end
 9     puts 'Estoy después del bloque'
10 end
11 
12 raise_and_rescue

Presenter Notes

Muchas gracias

Presenter Notes