An animation that visualizes what's going on when software is executed

Normally, you can't see how software is working. Either you only see the graphical user interface and don't see any processing at all, or even as a programmer, most of the time all you see is the static code, or its results, but everything is done invisibly.

This gap is filled with this visualization: it makes visible what's happening when a piece of software is executed. One possibility to do this is to show in any way the bare memory and how it's changing. But this would be a too low level. This simulation shows things on the level of objects which are the building blocks of object-oriented software. Each object is represented as a little ball. You can watch how they are dynamically created and deleted. Several objects can belong to the same class of objects; such a group of objects is shown in the same blueish color.

Objects can know each other, they can have references to each other. These references are shows as lines between the balls. Objects that reference each other attract each other, so they result in forming clusters of interconnected objects.

Finally, objects can be active: as code and data is connected in object-oriented programming, every action that is done by the software, is done by single objects, one at a time. So the activity jumps between objects, which you can observe in the simulation as objects lighting up in red color. Enjoy!

Add a Comment

Login or register to post comments
Posted Oct 21, 2013
Views: 871
Tags code, Visualization
Tools .NET/C#, Blender, CSound, ffmpeg, GIMP, Python
Data No data sets referenced yet.
<iframe src="http://www.visualizing.org/embedded/152788" width="620" height="450" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"></iframe>
Need help embedding?