¿Hay alguna herramienta para visualizar los objetos que se utilizan en un programa?

StackOverflow https://stackoverflow.com/questions/1824261

  •  22-07-2019
  •  | 
  •  

Pregunta

No estoy seguro de lo útil que sería esto, pero pensé que sería bueno visualizar los objetos que se usan en mi programa y a qué objetos se hace referencia desde dónde. Supongo que generaría algunos datos que serían utilizados por un programa como graphviz. ¿Hay alguna herramienta que haga esto? De lo contrario, ¿qué tan difícil sería hacerlo yo mismo? Idealmente, esto funcionaría para cualquier programa arbitrario, aunque si fuera necesario, podría hacer algunas modificaciones al código (como agregar una llamada dumpObjects () o lo que sea)

Estoy interesado en hacer esto para Java, pero si hay soluciones para otros idiomas, publíquelas también.

¿Fue útil?

Solución

Un generador de perfiles le permitiría ver qué objetos se crean en tiempo de ejecución. Esta es la salida de JProfiler, por ejemplo:

 jprofiler heap walker
(fuente: ej-technologies.com )

Otros consejos

Sun ha desarrollado el VisualVM que incluye memoria y perfiles de procesos. También admite complementos para tecnología como OSGi.

Un caso de uso interesante sería el análisis y la optimización de la memoria. Esto es precisamente de lo que se trata Eclipse MAT . Compruébalo.

texto alternativo http://dev.eclipse.org /blogs/memoryanalyzer/files/2008/05/dom_tree.gif

Para visualizar estructuras gráficas (incluyendo gráficos de objetos), hay muchas herramientas basadas en GraphViz: http://www.graphviz.org/

Existe el Object Graph Visualizer que muestra clases y objetos en 3D. Por ahora carece de una API para automatizar la inicialización, sin embargo, no debería ser demasiado difícil agregar esta funcionalidad. Código fuente también en Github .

Editar: aparentemente ya se está trabajando en esa dirección: https://eprints.hsr.ch/491/

 OGV

no estoy seguro de si eso es a lo que apunta, pero doxygen hará prácticamente todo eso .

tomará un montón de código de compilación y lo convertirá en html con referencias cruzadas, rtf de pdf. completado llamará al árbol para cada función y '' referenciado por '' para cada variable

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