On Tue, 21 Dec 2004 04:47:35 UTC,
ma*******@yahoo.ca (TCMA) wrote:
I am looking for some tools to help me understand source code of a
program written in C++ by someone else.
Are there any non-commercial, open source C or C++ tools to reverse
engineer C or C++ programs with source codes on linux?
i.e. It parses any sized C or C++ project to help reverse engineer,
document, draw UML diagram and understand it and thus maintain it
better.
Any tool that you could acquire would only rearrange the facts
already laid down in the source you have. Nothing will help you
get at the meaning of the source until you decide to sit down and
explore it. It will take time. It took someone else time to
write it. You weren't there, so you'll have to make up your own
mental model. It doesn't have to agree with what the source or
what the original developer had in mind.
If it is functional, explore the various UI components. What
does it expose and what was the mental work model the develoer
laid out? Explore the source. Start at the beginning if you
can find it. Also explore various components and try to
understand what they may do. At some point the fragments of
a large jigsaw puzzle will appear and you'll figure out how the
the pieces fit together. You may find some parts you want to
change and others you may want to use later. Only after you've
understood what is there and what the mental work model is can
you then use that base to extend the model the way you'd like
it to be.
Have fun,
David