.NET Reflector
From Wikipedia, the free encyclopedia
Latest release | 5.1.4.0 / 2008-09-18 |
---|---|
Operating system | Windows |
Type | Developer Utility |
License | Free, Proprietary |
Website | http://www.red-gate.com/products/reflector |
.NET Reflector is a free software utility for Microsoft .NET combining class browser, static analysis and decompiler, originally written by Lutz Roeder. MSDN Magazine named it as one of the Ten Must-Have utilities for developers,[1] Scott Hanselman listed it as part of his "Big Ten Life and Work-Changing Utilities".[2]
.NET Reflector was the first .NET assembly browser.[citation needed] It can be used to inspect, navigate, search, analyze, and browse the contents of a .NET component such as an assembly and translates the binary information to a human-readable form. Reflector allows decompilation of .NET assemblies into C#, Visual Basic .NET and MSIL. Reflector also includes a "Call Tree", that can be used to drill down into IL methods to see what other methods they call. It will show the metadata, resources and XML documentation. .NET Reflector can be used by .NET developers to understand the inner workings of code libraries, to show the differences between two versions of the same assembly, and how the various parts of a .NET application interact with each other. There are a large number of addins for Reflector.
.NET Reflector can be used to track down performance problems and bugs, browsing classes, and maintaining, or help become familiar with code bases. It can also be used to find assembly dependencies, and even windows DLL dependencies, by using the Analyzer option. There is a call tree and inheritance-browser. It will pick up the same documentation or comments that are stored in xml files alongside their associated assemblies that are used to drive Intellisense inside Visual Studio. It is even possible to cross-navigate related documentation (xmldoc), searching for specific types, members and references. It can be used to effectively convert source code between C# and VB.
.NET Reflector has been designed to host add-ins to extend its functionality, many of which are open source. Some of these add-ins provide other languages that can be disassembled to, such as PowerShell, Delphi, MC++. Others analyze assemblies in different ways, providing quality metrics, sequence diagrams, class diagrams, dependency structure matrices or dependency graphs. It is possible to use add-ins to search text, save disassembled code to disk, export an assembly to XMI/UML, to compare different version, or to search code. Other add-ins allow debugging processes. Some add-ins are designed to facilitate testing by creating stubs and wrappers.
On 20 August 2008, Red Gate Software announced they were taking responsibility for future development of the software.[3]
[edit] External links
[edit] References
- ^ Avery, James (2004-07-01). "Ten Must-Have Tools Every Developer Should Download Now". MSDN Magazine. http://msdn.microsoft.com/en-us/magazine/cc300497.aspx. Retrieved on 2008-08-20.
- ^ Hanselman, Scott (2007-08-23). "Scott Hanselman's 2007 Ultimate Developer and Power Users Tool List for Windows". http://www.hanselman.com/blog/ScottHanselmans2007UltimateDeveloperAndPowerUsersToolListForWindows.aspx. Retrieved on 2008-08-20.
- ^ Cramblitt, Bob (2008-08-20). "The Future of .NET Reflector". http://www.simple-talk.com/reflector/interview.htm. Retrieved on 2008-08-20.