Todo software empresarial atual consiste não apenas no código escrito na solution, mas também de diversas dependências externas. Então, se estiver pensando em migrar, a primeira coisa a fazer é verificar se as dependências estão disponíveis no .NET Core. E claro, analisar se seu código é portável.
A ferramenta .NET Portability Analyzer pode te ajudar a identificar quão portável é teu código para .NET Core.
O que é
O Portability Analyzer é uma ferramenta que pode ajudar você a identificar a portabilidade de seu aplicativo. Ela faz analise de APIs, identificando quais não são portáveis entre diversas frameworks .NET.
É um plugin para o visual studio que gerá um relatório tanto em excel quanto em HTML. Que irá relatar o nível de compatibilidade do projeto com o .NET Core 3.0, 2.2 etc.
Além disso a ferramenta enviará esses dados de compatibilidade para a equipe do .NET na Microsoft. Para auxiliar a equipe determinar quais APIs são necessárias para a maioria dos usuários.
E isso pode influenciar quais serão as próximos componentes a serem portados.
Não se preocupe, pois nenhum código ou DLL sua será enviado para a Microsoft.
Instalando
Esta ferramenta pode ser instalada como uma extensão do Visual Studio. Para isso vá no Marktplace, faça download e instale.
Depois de instalar a extensão, abra o visual studio e vá em Analyze > Portability Analyzer Settings:
A ferramenta não é exclusiva para o .NET Core. É possivel analisar a portabilidade para diversas plataformas e versões da Framework. Há muitas opções para escolher. Varia conforme tua necessidade.
Testando
Este teste será feito utilizando uma bibliotea open source que ainda não foi portada. Será o Firesharp.
Após ter feito download da solução, assim que estiver aberto no Visual Studio, pressione o botão direito na Solution e selecione Analyze Assembly Portability
Após alguns segundos, uma caixa de dialogo irá abrir exibindo os arquivos de Relatório.
Para essa API o relatório apontou 100% de compatibilidade para o .NET Core 2.2 e 3.
Relatório em Excel:
Retatório em HTML:
Conclusão
Espero que essa ferramenta ajude-os a migrar suas aplicações!
Happy Coding!
Comments