How to Manage huge codebase? UML ?

Hello guys,

what kind of tool do you use in order to manage/visualize an huge code base?

I mean, if you come back on your code after 3 months and it takes so much time to navigate all the dependencies and couplings among classes.

Maybe there is something that allows me to generate an UML diagram from a c# code?
Something easy and possibly straightforward.

Thank you!

No idea about UML diagrams. With interactive software I find that really the only way to understand it is to instrument it (breakpoints or debug printfs), then operate it, taking notes about what does what.

Most of any large codebase isn’t particularly interesting given your desire to do some particular change to it, so it’s really mostly about figuring out where interesting things are happening.

The other problem is that Unity is calling your code in all kinds of adhoc ways, based on the settings in your prefabs and scenes and other assets, so I would imagine code diagrams would have less value than with “pure” software.

thank you for answering.

  • Well to me, waste time in order to navigate my old code is not feasible, is not efficient at all. This is why do exists things like codemaps/UML diagrams

from microsoft website: “Code maps can help you avoid getting lost in large code bases, unfamiliar code, or legacy code. For example, when you’re debugging, you might have to look at code across many files and projects. Use code maps to navigate around pieces of code and understand the relationships between them. That way, you don’t have to keep track of this code in your head, or draw a separate diagram. So, when your work is interrupted, code maps help refresh your memory about the code you’re working on.”

-I am not working on the biggest project in the world, but big enough to get lost. And no, it’s not about design principles.
Nope. I strictly followed all good design principles, however it’s hard to navigate through the code becuase it’s big! I would like to visualize all the dependencies between classes. The question is about to visualize the code in order to manage it and improove it.
If I got external code that needs to be reviewed I would like a tool to see all the couplings among the classes in order to decide how to refactor it.
I am looking for a tool, I know already design principles, but if the code is not yours and you have to improove it, you need a tool to speed up the job.

Visual studio enterprise might be a possible solution. But do you know other ones? posibly free? I would like to generate the diagram just out of my code. I know Visual Paradigm could do it but it’s a terrible crap UI, their tutorial sucks and i couldnt do it with their tool, maybe I need an appropriate tutorial.

Any suggestion? thank you!