<p>I find myself to be a visual person and sometimes it's easier to learn something if I can draw diagram/pictures out of it. My question is which tool do I use if I want to map a programming framework (for example .net) visually and see the relationship between all entities (such as classes and members).</p>

[{'answer_id': 46295, 'author': 'jbl', 'author_id': 2353001, 'author_profile': 'https://Stackoverflow.com/users/2353001', 'pm_score': 0, 'selected': False, 'text': '<p>A decent first-cut might be to write a simple PERL script to parse out dependencies and then pipe that data to <a href="http://www.graphviz.org/" rel="nofollow noreferrer" title="Graphviz">Graphviz</a> for visualization.</p>\n'}, {'answer_id': 46367, 'author': 'Boris Terzic', 'author_id': 1996, 'author_profile': 'https://Stackoverflow.com/users/1996', 'pm_score': 0, 'selected': False, 'text': '<p>I\'m not sure if you are asking only about .NET or other frameworks, my experience is  mostly with Java but I\'m sure similar tools exist for .NET.</p>\n\n<p>On the level of classes you can get an auto-generated visualization using UML tools that can typically reverse engineer source code into a diagram. <a href="http://www.netbeans.org" rel="nofollow noreferrer">Netbeans</a> is free and has <a href="http://www.netbeans.org/kb/60/uml/re.html" rel="nofollow noreferrer">Java source to UML reverse engineering</a> features.</p>\n\n<p>Class diagrams however are very low level, they tell you little (directly) about the larger architectural themes. At that point tools like <a href="http://www.headwaysoftware.com/products/structure101/index.php" rel="nofollow noreferrer">Structure101</a> can be valuable in discovering architectural properties that you didn\'t realize were there. They have a trial version and can also deal with C and C++.</p>\n'}, {'answer_id': 46406, 'author': 'Steve Duitsman', 'author_id': 4575, 'author_profile': 'https://Stackoverflow.com/users/4575', 'pm_score': 2, 'selected': False, 'text': '<p>You might try <a href="http://www.ndepend.com/" rel="nofollow noreferrer">NDepend</a>.  The great <a href="http://www.hanselman.com/blog/ExitingTheZoneOfPainStaticAnalysisWithNDepend.aspx" rel="nofollow noreferrer">Scott Hanselman discusses it more here.</a>  Tons of visual dependency formats too.  It sounds like its only for .NET though.</p>\n'}, {'answer_id': 46444, 'author': 'Nick', 'author_id': 3233, 'author_profile': 'https://Stackoverflow.com/users/3233', 'pm_score': 1, 'selected': False, 'text': '<p>I find <a href="http://www.doxygen.org/" rel="nofollow noreferrer">doxygen</a> is useful for generating all kinds of dependency information when faced with a new project. It apparently handles "<em>C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D</em>". It uses Graphviz to generate graphical dependency charts.  You can include full source code, with hyperlinks from everything that was recognised. If you are lucky there will be some documentation that doxygen understands in there already. You can then navigate around the code quickly, learning what all the relationships are.</p>\n'}, {'answer_id': 277323, 'author': 'Kevin P.', 'author_id': 18542, 'author_profile': 'https://Stackoverflow.com/users/18542', 'pm_score': 0, 'selected': False, 'text': '<p>I second the Doxygen comment by Nick.  I am using Doxygen for C#.NET and it generates class diagrams, inheritance diagrams, etc.  Here is an <a href="http://www.thunderguy.com/semicolon/2006/08/06/c-sharp-documentation-comments-useless/" rel="nofollow noreferrer">informative blog post</a>.</p>\n'}, {'answer_id': 3602155, 'author': 'Patrick from NDepend team', 'author_id': 27194, 'author_profile': 'https://Stackoverflow.com/users/27194', 'pm_score': 1, 'selected': False, 'text': '<p>The tool NDepend proposes both an interactive <a href="http://www.ndepend.com/Doc_VS_Arch.aspx" rel="nofollow noreferrer">Dependency Graph</a> and an interactive  <a href="http://www.ndepend.com/Doc_Matrix.aspx" rel="nofollow noreferrer">Dependency Matrix</a>. Also, the tool is integrated in VisualStudio 2012, 2010 and 2008. <em>Disclaimer: I am one of the developers of the tool</em></p>\n\n<p>Whether you need to exhibit <a href="http://www.ndepend.com/Doc_VS_Arch.aspx#Call" rel="nofollow noreferrer">Call Graph</a>, <a href="http://www.ndepend.com/Doc_VS_Arch.aspx#Coupling" rel="nofollow noreferrer">Coupling Graph</a>, <a href="http://www.ndepend.com/Doc_VS_Arch.aspx#Inherit" rel="nofollow noreferrer">Inheritance Graph</a>, <a href="http://www.ndepend.com/Doc_VS_Arch.aspx#Dep" rel="nofollow noreferrer">Dependency Graph</a>, <a href="http://www.ndepend.com/Doc_VS_Arch.aspx#Matrix" rel="nofollow noreferrer">very large Graph</a>, pinpoints <a href="http://www.ndepend.com/Doc_Matrix.aspx#Cycle" rel="nofollow noreferrer">Dependency Cycles</a> and more, NDepend will generate some visual diagrams. Here are some screenshots:</p>\n\n<p><img src="https://i.stack.imgur.com/3U5w9.png" alt="enter image description here"></p>\n\n<p><img src="https://i.stack.imgur.com/SfE80.png" alt="enter image description here"></p>\n\n<p><img src="https://i.stack.imgur.com/0Dk44.jpg" alt="enter image description here"></p>\n'}]
['https://Stackoverflow.com/questions/46285', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/4786/']