Pregunta

Estoy tratando de encontrar una mejor manera de integrar IRB con mi desarrollo normal de rubíes. Actualmente rara vez uso IRB con mi código. Solo lo uso para verificar la sintaxis o para probar algo pequeño.

Sé que puedo cargar mi propio código en ruby ??como

require 'mycode'

pero esto generalmente no encaja con mi estilo de programación. A veces, las variables que quiero examinar están fuera del alcance o dentro de un bucle. ¿Hay una manera fácil de activar mi script y congelarlo en un cierto punto dentro de IRB? Creo que estoy buscando una forma más fácil de depurar mi código ruby ??sin romper mi tecla F5 (compilar).

Tal vez un desarrollador de ruby ??más experimentado pueda compartir conmigo un método de desarrollo más ágil.

¿Fue útil?

Solución

Instala la gema ruby-debug. Por supuesto, solicítelo dentro de su aplicación (solo en el modo de desarrollo / prueba). Ahora puede escribir 'depurador' donde desea detener la ejecución.

Una vez que su aplicación se detiene en su punto de interrupción, puede escribir 'ayuda' para conocer todos los comandos. Uno de ellos es 'irb'. Comienza una sesión de IRB en la que tiene acceso a todos los métodos en su contexto actual.

Personalmente uso p (print), eval, v i (vars de instancia) y v l (vars locales). Por supuesto, n para next yc para continue.

Sin embargo, el comando para salir de un bloque / método dado nunca funcionó para mí. Nunca investigué por qué :-)

Otros consejos

No tiendo a usar irb directamente con tanta frecuencia, ya que tiendo a estar dentro de los rieles y, por lo tanto, uso un montón de scripts / consolas, pero me gusta usar el depurador de rubíes (gema de depuración de rubíes). Básicamente, le permite establecer un punto de interrupción y luego recorrer su código línea por línea.

Aquí hay un screencast al respecto que no he visto, pero una búsqueda rápida lo detuvo y podría ser útil:

http: //brian.maybeyoureinsane. net / blog / 2007/05/07 / ruby-debug-basics-screencast /

Para el desarrollo de Ruby en Eclipse: hay una versión muy mejorada de RDT (herramientas de desarrollo de ruby) disponible ahora. Para instalarlo directamente en Eclipse, haga clic en Ayuda > Actualizaciones de software > Buscar e instalar > Buscar nuevas funciones botón de radio > siguiente > nuevo sitio remoto > Nombre = Ruby y URL = http://update.aptana.com/update/rdt/3.2 /

Otro complemento de Ruby es el nuevo Eclipse DLTK (kit de herramientas de idiomas dinámicos). DLTK estable versión 1.0.M5 acaba de salir hace unos días. Aquí hay algunos consejos de instalación útiles .

Simplemente uso rdebug para depurar cualquiera de mis códigos ruby ??o RoR.

Si está dispuesto a utilizar un IDE para la depuración, sé que Eclipse (a través de Herramientas de desarrollo de Ruby ) tiene una interfaz relativamente sencilla. Si estás haciendo raíles, hay una generación específica de eclipse llamada RadRails que también puede ayudar (aunque yo no lo he usado para la depuración)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top