Spanish (Español) translation by Ariel Kurumizawa Mcdowell (you can also view the original English article)
Ruby es uno de los lenguajes más populares usado en la web. Recientemente hemos empezado una nueve serie de Screencast aquí en Nettuts+que te introducirán en Ruby, así como los mejores frameworks y herramientas que van en conjunto con el desarrollo de Ruby. Hoy, daremos un vistazo a los tipos de datos básicos en Ruby, así como al uso de variables y cómo almacenar tu codigo Ruby en archivos.
Ponte al día
- Parte 1: Instalando Ruby y Primeros Pasos.
Ver Transmision
Tipos de datos basicos y objetos en Ruby.
En este capitulo,te daremos una introducción a los tipos de datos basicos de Ruby.
Cadenas
Las cadenas en Ruby no son muy diferentes de otros lenguajes que probablemente hayas usado. Puedes usar ambas comillas dobles o simples para crear cadenas de texto:
my_string = "Hello, World!" my_other_string = 'What's going on?'
Por supuesto, si quieres usar el mismo tipo de comillas entre la cadena, tienes que usar secuencias de escape:
greeting_1 = 'How\'re y\'all doin\'?' greeting_2 = "\"How are you doing?\" she asked."
Ruby ofrece interpolación de cadenas: "incrustar" el resultado de un código dentro de una cadena. Probablemente hagas esto mas seguido con variables, pero puedes ejecutar cualquier codigo que quieras ahí. El codigo que estas interpolando va entre #{
Y }
:
name = "Andrew" greeting = "Hello, my name is #{name}" addition = "25 x 8 = #{25 * 8}"
Numeros
Ruby puede soportar ambos tipos de numeros enteros y de punto flotante(numeros con decimales), y lo hace justo como se espera:
ten = 10 fifteen_point_two = 15.2 twenty_five_point_two = ten + fifteen_point_two;
Aquí esta la primera de varias piezas de azúcar sintáctica que veremos: puedes usar un guion bajo como miles de divisores cuando escribes numeros largos; Ruby ignora los guiones bajos. Esto hace que sea mas facil leer numeros largos:
billion = 1_000_000_000
Arreglos
Hay dos formas de crear un arreglo vacio:
my_arr = Array.new my_other_arr = [] my_third_array = ["one", "two", "three"]
Es fácil crear un arreglo con elementos en el, como puedes ver.
Para añadir un elemento a un arreglo, puedes usar el método push
, o usar la notación de corchetes, poniendo el indice apropiado en los corchetes. Así como también puedes usar los corchetes para tener el valor de vuelta.
my_arr.push("foobar") my_arr[1] = "gizmo" my_arr[0] # foobar
Hashes
Un hash en Ruby es como un objeto literal en JavaScript o un arreglo asociativo en PHP. Están construidos de una manera similar a los arreglos:
my_hash = Hash.new my_other_hash = {}
Para agregar un elemento en un hash, utilizas de nuevo la notacion de corchetes. Puedes cualquier valor como la clave, pero las cadenas, o símbolos(Que veremos mas adelante) son opciones comunes.
my_hash["name"] = "Andrew" my_hash[:age] = 20
Para crear un hash con objetos añadidos justo desde el principio,usas una notacion casi identica a los objetos literales de JavaScript; la unica diferencia es que Ruby usa una flecha (=>
) entre las claves y valores:
person = { :name => "Joe", :age => 35, :job => "plumber" }
Simbolos
Los simbolos son cadenas ligeras Son usadas muy seguido como identificadores, en lugares donde otros lugares usan seguido las cadenas. Son usadas en lugar de las cadenas porque pueden consumir menos memoria(Se pone complicado, así que intento mantenerlo simple; si deseas leer más revisa este artículo),
Para crear un simbolo, simplemente precede una palabra con dos puntos; puedes ver unos cuantos ejemplos en este fragmento de codigo abajo.
True, False, y Nil
Estos valores trabajan justo como esperabas. que lo hicieran. Nil
es el valor "vacio" de Ruby, a pesar de que es un objeto.
Metodos y Objetos
Porque absolutamente todo es un objeto en Ruby, casi todo tiene metodos que puedes ejecutar:
name = "Andrew" name.upcase # "ANDREW" name.downcase # "andrew"
Puedes agregar facilmente metodos a objetos La primera forma es agregando un metodo simple. Este es un metodo que es puesto en una sola instancia de un objeto.
name = "Andrew" name_2 = "Joe" def name.add_last_name "#{self} Burgess" end name.add_last_name # "Andrew Burgess" name_2.add_last_name # NoMethodError
Si quieres que todas las cadenas tengan este metodo, puedes hacerlo abriendo la clase String y agregando un metodo de instancia.
name = "Joe" name_2 = "Andrew" class String def add_last_name "#{self} last_name_goes_here" end end name.add_last_name # "Joe last_name_goes_here" name.add_last_name # "Andrew last_name_goes_here"
Archivos Ruby
Por supuesto, querrás poner tu codigo Ruby mientras va creciendo. Solo dale a ese archivo una extensión .rb
, y deberias estar bien.
Intenta poner esto en un archivo:
name = "Joe" def name.shout "#{self.upcase}!!!!" end puts name.shout
Para ejecutar este codigo, abre una terminal y ejecuta lo siguiente:
$ ruby your_file_name.rb JOE!!!!
Conclusion
Eso es todo! Hazme saber si tienes alguna pregunta en los comentarios!