
Ask HN: How to navigate large code bases? - paulborza
Are there any good tools out there designed for navigating large code bases? I&#x27;m thinking something that can generate class and caller&#x2F;callee diagrams... Thanks!
======
davismwfl
Depends on the language of the codebase, but there are various tools that can
help you, like doxygen if things are setup well.

My two cents, I always do a manual mapping for the modules and key classes,
even in large code bases because it forces me to learn the codebase and create
documentation at the same time. I do this by literally starting at main() and
tracing the code to what is called first etc. So when I am done I have a high
level overview of the path through the code and what modules are what and what
they do.

Usually takes a few days to do a larger code base, largest one took me 2
weeks. It isn't the most fun work, but it lets you build documentation to save
yourself and others later too.

------
billconan
My experience is that debugging is more effective than looking at static code.
To find callers, I set break points. Other than that, grep， opengrok, doxygen
or a decent ide are good helpers.

~~~
paulborza
Thanks. I'm looking at doxygen right now. Looks like it has support for
generating dependency graphs.

