Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
0Activity
0 of .
Results for:
No results containing your search query
P. 1
Ruby en 15 Minutos[1]

Ruby en 15 Minutos[1]

Ratings: (0)|Views: 0|Likes:
Published by Melvin Matos

More info:

Published by: Melvin Matos on Nov 01, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

11/01/2013

pdf

text

original

 
'Hola 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') # #<File:../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 el mé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 cualquier cará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 la palabra 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ón del
 
.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 suma es: 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 def initialize super('Yukihiro Matsumoto') end end puts Matz.new.saludar # Hola, mi nombre es Yukihiro Matusmoto 

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->