Febrero 26, 2007
Aprender el sintaxis de una nueva lengua tiene el potencial de inducir el bostezo ocasional. Así pues, hacer cosas más interesantes, te lo presentaré de una manera práctica que te deje jugar adelante en el país: utilizaremos la cáscara de rubíes interactiva.
Shell de rubíes interactivo (irb)
Puedes encender encima de la cáscara de rubíes interactiva incorporando el irb en una ventana terminal.
¡No la caja estándar del DOS!
Los usuarios de Windows, no se olvidan de utilizar la opción de rubíes abierta de la consola del panel de control de los carriles de instante, para cerciorarse de el ambiente que estás utilizando contienes los ajustes derechos.
el irb permite que publiques comandos de rubíes recíprocamente, una línea a la vez. Esto es grande para jugar con la lengua, y es también grande para eliminar errores, pues veremos en el capítulo 11, eliminando errores, probando, y Benchmarking.
Un par de puntos sobre el irb te hizo salir considerará en este capítulo:
* Las líneas que comienzan con el aviso de rubíes de la cáscara (irb>
son mecanografiadas adentro por ti (y mí).
* Las líneas que comienzan con el => demuestran el valor de vuelta del comando se ha incorporado que.
Comenzaremos con un ejemplo realmente breve:
irb> 1
=> 1
En este ejemplo, he lanzado simplemente el número 1 en la cáscara de rubíes, y he conseguido detrás qué aparece ser muy el mismo número.
Las miradas pueden engañar, aunque — no es realmente muy el mismo número. Qué detrás nos dieron es de hecho un objeto de rubíes lleno-ofrecido.
¿Recordar nuestra discusión sobre la programación orientada al objeto en la sección anterior? Bien, en rubí, se trata absolutamente todo mientras que un objeto con el cual poder obrar recíprocamente — cada objeto pertenece a cierta clase, por lo tanto cada objeto puede almacenar datos y funcionalidad bajo la forma de métodos.
Para encontrar la clase a la cual nuestro número pertenece, llamamos el método de la clase del número:
irb> 1.class
=> Fixnum
Tocamos en remitentes y receptores anterior. En este ejemplo, hemos enviado el mensaje de la clase al 1 objeto, así que el 1 objeto es el receptor (no hay remitente, pues estamos enviando el mensaje de la línea de comando interactiva más bien que de otro objeto). El valor que es vuelto por el método hemos invocado somos Fixnum, que es la clase de rubíes que representa valores del número entero.
Puesto que todo en rubí (clase incluyendo) es un objeto, podemos enviar realmente muy el mismo mensaje a la clase de Fixnum. El resultado es diferente, pues esperaríamos:
irb> Fixnum.class
Clase del =>
Esta vez, el valor de vuelta es la clase, que está tranquilizando algo — lo invocamos en un nombre de la clase, después de todos.
Observar que la clase del método es todo minúscula, con todo la clase de vuelta del valor comienza con una mayúscula. Un método en rubí se escribe siempre en minúsculas, mientras que la primera letra de una clase se capitaliza siempre.
El obrar recíprocamente con los objetos de rubíes
El conseguir utilizado al pensamiento en términos de objetos puede tomar una cierta hora. Miremos algunos diversos tipos de objetos, y ver cómo podemos obrar recíprocamente con ellos.
Objetos literales
Los objetos literales son los conjuntos de caracteres o los números que aparecen directamente en el código, al igual que el número 1 que fue vuelto en la sección anterior. Hemos visto números en la acción; después, miremos un literal de cadena.
Un literal de cadena es un objeto que contiene una secuencia de caracteres, tales como un nombre, de una dirección, o de una frase especialmente ingeniosa. De la misma forma que creamos el 1 objeto literal en el ejemplo anterior, podemos crear fácilmente un nuevo objeto del literal de cadena, después te enviamos un mensaje. Un literal de cadena es creado incluyendo los caracteres que componen la secuencia en cotizaciones simples o dobles, como esto:
irb> “el zorro marrón rápido”
=> “el zorro marrón rápido”
Primero, confirmaremos que nuestro literal de cadena pertenece de hecho a la secuencia de la clase:
irb> “el zorro marrón rápido” .class
Secuencia del =>
Este objeto de la secuencia tiene una abundancia de la funcionalidad encajada. Por ejemplo, podemos comprobar el número de los caracteres que nuestro literal de cadena abarca enviándote el mensaje de la longitud:
irb> “el zorro marrón rápido” .length
=> 19
¿Materia fácil, eh?