Ruby

Páginas: 6 (1415 palabras) Publicado: 24 de abril de 2014
Ruby en 15 Minutos:
'Hla mundo'
puts 'Hola mundo'
salida:
Hola mundo
Asignaciones
# Toda asignación devuelve su valor
a = 4 # 4

# Las asignaciones se pueden usar en cadena
a = b = 4 # 4
a + b # 8

# y usados en un test
fichero = File.open('../tutor.txt') # #
cont_linea = 0 # 0
cont_linea += 1 while (line =fichero.gets)# nil

# Atajos
a += 2 # 6
a = a+2 # 8

# Asignación en paralelo
a, b = b, a # [4, 8]

# Dividiendo arrays
array = [1, 2] # [1, 2]
a, b = *array # [1, 2]
irb y ri
irb: es el intérprete interactivo de ruby, donde se pueden probar al vuelo porciones de código.
ri: herramienta para acceder a la documentación. Por ejemplo, para documentarnos sobre elmétodo tr de la clase String, ponemos en la línea de comandos:
ri String#tr
Sintaxis
variables, constantes, métodos,..
Variables / Métodos: estudiante, i, epsilon, piso_grande
Las variables y los métodos se parecen. Esto es lógico, puesto que una variable se puede sustituír por un método.
Las variables y los métodos deben ser escritos en minúsculas, que empiecen por una letra, y que contengan cualquiercarácter alfanumérico o el guión bajo. Por ej: piso_grande. Sin embargo, las clases deben empezar por mayúscula. Además, a diferencia de los métodos/variables, no se usa el guión bajo para nombres compuestos. Por ej: PisoGrande.
Las clases deben empezar por mayúscula. Además, a diferencia de los métodos/variables, no se usa el guión bajo para nombres compuestos.
Constantes: PDF_KEY, R2D2,PERSONA_VIAJE
Las constantes sólo se pueden definir una vez.
Las constantes deben ser escritas en letras mayúsculas.
Variables de objeto: @nombre, @maximo, @hora_comer
Las variables de objeto (o variables de instancia) sólo pueden ser leídas/escritas por el propio objeto.
Variables de clase: objeto, llave_maestra
Las variables de clase no pertenecen a los objetos, si no a la clase. Existenúnicamente en la clase, y son compartidas por todos los objetos.
Variables globlales: $global, $1, $contador
El uso de las variables globales ha sido declarado un crimen capital por la escuela del buen diseño.
Símbolos: :nombre, :edad, :Clase
Los símbolos son identificadores únicos que los encontraremos en varios sitios.
funciones, strings interpolados, números
# Las funciones están definidas por lapalabra clave "def"
# Los argumentos pueden tener valores por defecto

def multi_foo(count = 3)
'foo'*count
end

# Los paréntesis pueden omitirse, si la situación no es ambigua
multi_foo(3) # "foo foo foo"
puts "hola mundo" " hola mundo

# Para interpolar valores dentro de los strings:
# i. Usar comillas dobles
# ii. Usar #{...}
'Simple #{multi_foo(2)}' # Simple#{multi_foo(2)}
"Interpolado #{multi_foo}" # Interpolado foo foo foo

# Números
10 # 10
0.5 # 0.5
2e-4 # 0.0002
0xFFFF # 65535
010 # 8
Definición de funciones
Las funciones se definen por la palabra clave def
def hola(programador)
puts "Hola #{programador}"
end

hola('Pepe') # Hola Pepe
Clases y objetos
Todo es un objeto…
…acostúmbrate a usar la notacióndel .método
(5.6).round # 6
(5.6).class # Float
(5.6).round.class # Fixnum

'un string'.length # 9
'un string'.class # String
'pepe dice'.gsub('p','t') # 'tete dice'
'abc'.gsub('b','xxx').length # 5

['algunas', 'cosas', 'array'].length # 3
['algunas', 'cosas', 'array'].reverse # ['array', 'cosas', 'array']

# Al ser un objeto, el método sumaes:
1.+(2) # 3
# pero para estos casos hay un azúcar sintáctico:
1 + 2 # 3
Definición de clases
class Persona
def initialize(nombre)
@nombre = nombre
end

def saludar
"Hola, mi nombre es #{@nombre}."
end
end

pepe = Person.new('Pepe')
puts pepe.saludar # Hola, mi nombre es Pepe
Herencia de clases
class Matz < Persona...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ruby
  • ruby
  • ruby
  • RUBY
  • Ruby
  • Ruby
  • ruby
  • RUBY

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS