Recently, as a third party, we have maintained a large business system (Visual C #2003. Because the class inheritance level in the project is deep,CodeDuring analysis, different types of files are transferred to [Right-click menu to define...], dizzy! In particular, you can view the inherited protected override modifier methods in different classes that implement polymorphism (for example, you can understand what functions each inheritance layer implements ....) especially headaches ....
In fact, when determining that a segment or part of the Code must be modified, we must first analyze the possible vertical and horizontal effects of the modification. The vertical influence mainly comes from the inheritance relationship (functional inheritance and polymorphism) of the class to which the Code belongs. The horizontal influence mainly refers to whether the method to which the Code belongs is public (public/protected/internal), the degree of association between the class to which the Code belongs and other classes (aggregated and included )....... I am very grateful to you for your comments on code maintenance.
I know that there is a reflector software and many plug-ins based on it, but it seems that there is no analysis project,ProgramThe plug-in of the inheritance relationship function of the set and class. I did not find any tools that provide Function Analysis on the Internet (maybe I am alone ...). Therefore, I came up with the idea of writing a small tool with such analysis functions. Currently, v0.1 (originally wanted to set the version number to v0.001, because the tool is too simple, haha) only implements the following functions:
1. browsing of class members (methods, attributes;
2. Analyze the inheritance of a single class;
3. Analyze the class inheritance of a single assembly;
4. Analyze the class inheritance of all loaded assembly (usually a project.
Use tools to analyze the inheritance relationships of all classes in a project (an EXE file and many DLL files:
Analyze the inheritance relationships of a single class:
The tool is written in Visual C #2005. The reflection principle adopted is not too long.
In the next version, we want to continue to improve the following functions:
1. View filtering in the Options dialog box of the tool;
2. Il code display function;
3. Correlation Analysis of classes and methods;
4. decompile the code to C.
5. Other functions greatly proposed by the readers ....
You are welcome to download the trial and provide more valuable comments. When the tool is upgraded to V1.0 (or you think the code will not be laughed at), I will provide the completeSource codeThe downloaded tool has no obfuscation or shelling. [reflector] has the source code! Thank you!
Download the attachment tool:/files/ysxlh/assemblyview.rar