Refletor .NET

Da Wikipédia, a enciclopédia livre
Ir para a navegação Saltar para pesquisar
Refletor .NET
DotNetReflector.png
Autor(es) original(is)Lutz Roeder
Desenvolvedor(es)Software Red Gate
Versão estável
10.3.0.1936 / 15 de outubro de 2020 ; 22 meses atrás ( 2020-10-15 )
Sistema operacionalWindows 7 ou posterior
Plataforma.NET Framework 4.7.2 ou posterior
ModeloNavegador e descompilador de classe
Licença Software comercial proprietário
Local na rede Internetwww .refletor .net

.NET Reflector é um navegador de classes , descompilador e analisador estático para software criado com .NET Framework , originalmente escrito por Lutz Roeder. A MSDN Magazine o nomeou como um dos dez utilitários obrigatórios para desenvolvedores, [1] e Scott Hanselman o listou como parte de seus "Big Ten Life and Work-Changing Utilities". [2]

Visão geral

Ele pode ser usado para inspecionar, navegar, pesquisar, analisar e navegar no conteúdo de um componente CLI, como um assembly, e traduz as informações binárias em um formato legível por humanos. Por padrão, o Reflector permite a descompilação de assemblies CLI em C# , Visual Basic .NET , C++/CLI [3] e Common Intermediate Language e F# (versão alfa). O Reflector também inclui uma "árvore de chamadas" que pode ser usada para detalhar os métodos de linguagem intermediária para ver quais outros métodos eles chamam. Ele mostrará os metadados , recursos e XMLdocumentação. O .NET Reflector pode ser usado por desenvolvedores .NET para entender o funcionamento interno das bibliotecas de código, para mostrar as diferenças entre duas versões do mesmo assembly e como as várias partes de um aplicativo CLI interagem entre si. Há um grande número de suplementos para o Reflector.

O .NET Reflector pode ser usado para rastrear problemas e bugs de desempenho , navegar por classes e manter ou ajudar a se familiarizar com as bases de código. Ele também pode ser usado para localizar dependências de assembly e até mesmo dependências de DLL do Windows , usando a opção Analyzer. Há uma árvore de chamadas e um navegador de herança. Ele coletará a mesma documentação ou comentários armazenados em arquivos xml junto com seus assemblies associados que são usados ​​para conduzir o IntelliSense dentro do Visual Studio . É ainda possível navegar pela documentação relacionada ( xmldoc), procurando por tipos específicos, membros e referências. Ele pode ser usado para converter efetivamente o código-fonte entre C# e Visual Basic.

O .NET Reflector foi projetado para hospedar suplementos para estender sua funcionalidade, muitos dos quais são de código aberto . Alguns desses suplementos fornecem outras linguagens que também podem ser desmontadas, como PowerShell , Delphi e MC++ . Outros analisam assemblies de diferentes maneiras, fornecendo métricas de qualidade, diagramas de sequência, diagramas de classes, matrizes de estrutura de dependência ou gráficos de dependência. É possível usar suplementos para pesquisar texto, salvar código desmontado em disco, exportar um assembly para XMI/UML, comparar versões diferentes ou pesquisar código. Outros suplementos permitem processos de depuração. Alguns suplementos são projetados para facilitar o teste criando stubs e wrappers.

História

O .NET Reflector foi originalmente desenvolvido por Lutz Roeder como freeware . Suas primeiras versões podem ser rastreadas até janeiro de 2001. [4]

O Archive.org hospeda uma coleção das primeiras versões do Reflector.

Em 20 de agosto de 2008, a Red Gate Software anunciou que estava assumindo a responsabilidade pelo desenvolvimento futuro do software. [5]

Em fevereiro de 2010, a Red Gate lançou o .NET Reflector 6 junto com uma edição Pro comercial que permitia aos usuários entrar no código descompilado no depurador do Visual Studio como se fosse seu próprio código-fonte.

Em 10 de janeiro de 2011, a Red Gate anunciou que o .NET Reflector 7 incorporaria o suplemento PowerCommands de Jason Haley. [6]

Em 1 de fevereiro de 2011, a Red Gate anunciou que o .NET Reflector se tornaria um produto comercial a partir da versão 7, [7] que foi lançada em 14 de março de 2011. Isso levou à criação de várias alternativas gratuitas, incluindo dotPeek, [8] CodeReflect e o programa de código aberto ILSpy. Posteriormente, em 26 de abril de 2011, devido ao feedback da comunidade, a Red Gate anunciou que continuaria a disponibilizar o .NET Reflector 6 gratuitamente para usuários existentes (enquanto os novos usuários terão que pagar pelo Reflector). [9]

Referências

  1. ^ Avery, James (2004-07-01). "Dez ferramentas obrigatórias que todo desenvolvedor deve baixar agora" . Revista MSDN. Arquivado a partir do original em 19 de setembro de 2008 . Recuperado 2008-08-20 .
  2. ^ Hanselman, Scott (2007-08-23). "2007 Ultimate Developer and Power Users Tool List de Scott Hanselman para Windows" . Arquivado a partir do original em 14 de setembro de 2008 . Recuperado 2008-08-20 .
  3. ^ Wills, Dean. "Suplemento C++/CLI para .NET Reflector" .
  4. ^ Roeder, Lutz. "Programação.Net de Lutz Roeder" . Arquivado a partir do original em 2 de julho de 2016 . Recuperado em 4 de julho de 2016 .
  5. ^ Cramblitt, Bob (2008-08-20). "O Futuro do Refletor .NET" . Arquivado a partir do original em 22 de agosto de 2008 . Recuperado 2008-08-20 .
  6. ^ Leia, Bart. "Mais grandes novidades: .NET Reflector 7 Beta, Integrando o suplemento PowerCommands de Jason Haley já está disponível" . Conversa Simples . Recuperado em 20 de janeiro de 2011 .
  7. ^ Davidson, Neil. "Uma carta aberta à comunidade .NET" . Arquivado a partir do original em 2011-02-05 . Recuperado em 2011-02-02 .
  8. ^ "Blog JetBrains .NET Tools: dotPeek - Free .NET Decompiler está disponível para acesso antecipado" .
  9. ^ Davidson, Neil. "Por que revertemos algumas de nossas decisões do Reflector" . Arquivado a partir do original em 16 de janeiro de 2013.