martes, 16 de abril de 2013

Debugar en Smallworld

Smallworld a partir de la versión  4.1, es capaz de debugar una función es particular, para activar esta opción, debemos cargar los módulos de “Development Tools”, que se realzará desde el dialogo de carga de modulos.
Para iniciar la carga de módulos, utilizamos el método:
-          sw_module_dialog.open();



Cargaremos todos los modulos de  Development tools, esto nos creará una nueva aplicación en el aplication manager llamada Development tools,  esta aplicación nos dara el poder de un desarrollador avanzado, con múltiples funcionalidades, que iremos explicando poco a poco, pero la que nos interesa actualmente es la debugación de un método determinado, para ello abriremos la aplicación u activaremos la función “debug Magik Methods”

Al abrir esta funcionalidad, nos encontraremos con una ventana muy simple, con un gran espacio para escribir, en este espacio deberemos copiar el método que queremos debugar. Esta pantalla de debugación también se puede abrir una vez cargamos los módulos de desarrollador, con el mathode:
-          dev_tools.activate_debugger()
Como ejemplo hemos creado el siguiente método:
_method integer.mola()   x<<3   y<<2   z<< x+y
   _return z_endmethod$
La hemos compilado y copiado en el debuger, una vez copiado hemos clicado el botón OK.
Inmediatamente la ventana nos ha recompilado el código y nos ha puesto checkbox al lado de cada línea, estos chekbox serán nuestros breakpoints, si esta activo se parara en esa línea.


Ahora al ejecutar el método, si tenemos algún punto de interrupción se parará en esa línea
La opciones  que tenemos para debugar nuestro código son:


-          Step: Ejecuta la línea de código actual.
-          Run: Sigue la ejecución del código, hasta el siguiente punto de interrupción.
-          TraceBack: nos abrirá una ventana con el traceback de nuestro código.
-          Object: esta opción abre una ventana para la inspección del objeto, esta ventana se puede abrir con un click sobre la variable.

Hasta aquí el primer contacto con el debugador de magik, para todos aquellos que estamos usando Emacs en lugar del MDT. En breve explicaremos con más detalle, tanto más opciones de las developers tools, como la ventana del inspector.

Hasta la próxima.

2 comentarios:

Rocio dijo...

La programación no me gusta mucho pero si el hecho de disfrutar de la tecnología y por eso esta bueno el hecho de poder leer estas cosas para entender un poco mas las cuestiones vinculadas a la computación. Como considero que hoy en dia los celulares, son pequeñas computadoras, decidi comprarme un lumia 900

jj Marín dijo...

Muy interesante el blog es prácticamente el único blog en Castellano sobre Magik. Sabes de algún foro o webs que tengan más ejemplos de código o alguna forma de contactar para compartir código y trucos sobre magik. Un saludo y gracias por tu blog.