viernes, octubre 19, 2007

El man de ruby

Hola amiguetes! me echabais de menos?... NO?!, jo... Bueno da igual, ahí vamos con el apunte de hoy.

Pues resulta que estoy aprendiendo ruby, ya había mirado cosas hace algún tiempo pero ahora estoy en plan serio, ya escribo algunas cosillas y espero que en breve pueda empezar ya a usar todo el potencial de ruby tanto para hacerme bibliotecas, como programas grandes o para escribir pequeños scripts para hacer rápidamente una tarea.

Bueno, para todo el que quiera empezar y para recordarlo yo mismo, una de las primeras cosas que he aprendido en ésta mi n-ésima vez aprendiendo ruby (y que no sabía las veces anteriores) es que ruby tiene un sistema de documentación, el paquete RDoc (Ruby Documentation). Cuando lo hayamos instalado podremos hacer consultas usando el programa ri (Ruby Information) sobre cualquier método y se nos presentará en pantalla una pequeña ayuda diciendo qué es lo que hace y qué hay que pasarle, etc... MUY MUY ÚTIL PARA NOVATOS.

Otra cosa que me resulta pesada cuando se va a aprender uno un nuevo lenguaje es la cantidad de funciones que desconoce y empiezas a implementartelas tú sin saber que ya existen... Ahora para evitarme esa situación y conocer las funciones, cuando necesito hacer algo que lo primero que se me pasa por la cabeza es "joder, esto es algo típico", entonces es altamente probable que ruby ya tenga una función que hace eso y mil cosas más. Para saber que funciones tiene un objeto o clase existe un método llamado methods que devuelve un array con todos los métodos disponibles para ese objeto. Tener en cuenta que son TODOS, esto es, todos los heredados desde la clase Object hasta la clase que es. Si queremos ver que métodos tiene sólo de la última clase podemos utilizar el método instance_methods. Esto es especialmente útil para buscar nombres que nos suenen a que pueden hacer lo que queremos y luego usar ri o ri [.|#] (lo siento, tuve que poner una regexp :P) para ver qué es lo que realmente hace.

Pues eso, espero que si deciden aprender ruby, esto les ayude.

No hay comentarios: