Slashdot Mirror


Visualising Code Structure in Large Projects?

TheMaccLads asks: "I've recently joined a new C++ project, and it's in a terrible state. There are 100-odd source directories, dozens of libraries, and a couple of dozen executables and DLLs. Some executables pull in (i.e. compile themselves) the occasional source file from a library, instead of using the libraries. My job is to port a subset to unix, but I need a tool to visualise all the relationships between directories, projects, libraries, and so on, because my brain will overheat soon otherwise. Preferably a tool that will do it by parsing the MS Dev studio projects and workspaces, but if I have to write it myself in Perl, I will! Anyone know of any tools? Or suggest an approach?"

3 of 47 comments (clear)

  1. Pen and Paper. by spt · · Score: 5, Insightful


    Really! Just start drawing lines and boxes as you delve through manually. If you get something to do it automatically, you still won't have a good visualisation in your head.

  2. Doxygen by brenfern · · Score: 5, Informative

    I have used this, it is fantastic; it will work with your old C++ code straightoff, & also accepts javadoc-style comments. Handles the worst code elegantly. Draws pretty graphs for you. Does the bits of a programmer's job that really ought to be automated.

    1. Re:Doxygen by bitMonster · · Score: 5, Informative
      I agree. It works wonders on 3rd party sources too, even when they did not use any of the supported commenting conventions.

      Get it.

      I wish it supported python, which is the other OO language I routinely use.