O que há de novo no Visual Studio 2022?


0

O Visual Studio 2022 foi lançado oficialmente junto com o .NET 6, ao qual oferece suporte. Inclui muitos novos recursos e melhorias, como AI IntelliCode, que pode preencher automaticamente pedaços de código para você.

Você pode baixar o instalador de seu site. Embora ainda seja novo, ainda é muito Visual Studio, então, a menos que você dependa de extensões que ainda não foram atualizadas, não tenha medo de tentar.

Abordaremos as alterações mais importantes que encontramos, mas se quiser ler as notas de patch linha por linha, você pode fazer isso nos documentos da Microsoft. Há também um roteiro que descreve a direção geral.

Finalmente é de 64 bits

O Visual Studio sempre foi de 32 bits, o que significa que foi limitado a 4 GB de RAM no processo principal. Geralmente não ultrapassa esse orçamento para projetos normais, mas alguns usuários podem ter exceções de falta de memória com soluções particularmente grandes.

Com o VS 2022, ele foi corrigido e agora é um aplicativo de 64 bits. A Microsoft testou projetos com 1600 projetos e 300 mil arquivos e funciona bem.

Propaganda

O 64 bits deveria teoricamente rodar mais rápido, e parece ser um pouco mais rápido nos tempos de inicialização, mas a Microsoft também tem trabalhado no desempenho em geral, então é difícil dizer o quanto isso realmente o afeta. De qualquer forma, uma boa mudança.

Claro, você ainda pode desenvolver aplicativos de 32 bits com o VS 2022. Isso se aplica apenas ao editor.

AI IntelliCode é incrível

O Visual Studio 2022 apresenta uma atualização importante para seu mecanismo de preenchimento automático IntelliCode. É capaz de preencher automaticamente linhas inteiras e pedaços de código e funciona muito bem.

É um pouco diferente do Copilot do GitHub, que faz um trabalho semelhante. O Copilot irá gerar fragmentos inteiros de código e funciona melhor para funções pequenas e contidas com uma solução clara. É ótimo, mas tem seus próprios problemas, principalmente o fato de que o código que ele gera não é garantido nem mesmo ser o que você deseja (e pode extrair código palavra por palavra de repositórios GitHub aleatórios, o que é outro problema).

O IntelliCode tem uma abordagem muito mais restrita e simplesmente completa uma única linha, levando em consideração alguns dos seguintes fatores:

  • Nomes e posições de variáveis
  • Bibliotecas que você está usando
  • Funções no código circundante
  • A lista suspensa do IntelliSense, que você pode, na verdade, abaixar para dar ao IntelliCode mais sugestões

Depois de usá-lo por duas semanas, é realmente algo que você tem que experimentar por si mesmo. É chocantemente inteligente e, muitas vezes, ao usá-lo, me peguei pensando “uau, eu estava prestes a digitar isso!”

Propaganda

Por exemplo, escrevendo uma função que recebe um número de 1 a 12:

Para entender e fornecer esse resultado, o IntelliCode está fazendo muito mais do que apenas completar a sintaxe automaticamente; Ele entende que estou esperando uma exceção, bastante óbvia, visto que estou digitando “throw”, e pode descobrir que essa exceção só é lançada se uma comparação de tamanho inteiro falhar. Sabe que Width é um argumento sendo verificado antes da execução do código e que estou lançando uma exceção porque algo está errado com o argumento.

Sabendo de tudo isso, ele dá um palpite extremamente preciso sobre minhas intenções e decide que um ArgumentOutOfRangeException deve ser o que estou tentando digitar, antes mesmo de começar a digitar “novo”.

E, se você descer a página, poderá preencher os resultados para diferentes opções. Ainda é um pouco inconsistente (decidiu codificar “Width” e depois usou nameof) mas, no geral, funciona bem.

IntelliCode roda o tempo todo e tudo que você precisa fazer é pressionar tab-tab para aceitá-lo, caso contrário, você pode continuar digitando. Atualmente, ele funciona apenas para C #, mas mais linguagens estão “chegando em breve”.

Suporte .NET 6

.NET 6 é a versão mais recente. O VS 2022 tem suporte integrado para ele e todos os seus recursos, e o padrão é .NET 6 para novos projetos.

Propaganda

Mais notavelmente, o VS 2022 tem suporte total para .NET MAUI, ou Multi-platform App UI, o novo padrão da Microsoft para desenvolvimento de aplicativos nativos em várias plataformas.

Recarregamento do .NET Hot

Uma das coisas mais irritantes na programação é ficar olhando para a tela, esperando que seu aplicativo seja compilado, iniciado e atualizado com as alterações mais recentes. Hot Reloading é um recurso de muitas outras linguagens, como JavaScript, e tem sido usado por estruturas da web como React para fazer mudanças rápidas. Até agora, porém, não havia uma solução padronizada para .NET.

Não é completamente universal e requer uma configuração de projeto específica, mas o VS 2022 inclui recarregamento a quente para “WPF, Windows Forms, visualizações .NET MAUI, aplicativos ASP.NET Core code-behind, aplicativos de console, WinUI 3 e muitos outros”. Isso exclui bibliotecas de classes usadas por outro aplicativo.

Certos tipos de alterações podem não se aplicar de forma adequada, o que solicitará que você reinicie corretamente. Você pode ver a lista completa deles aqui, mas a essência disso é:

  • Sem modificação de assinaturas de método
  • Não adicionar usando declarações
  • Sem interfaces de modificação
  • Sem renomear membros de qualquer tipo

Basicamente, você pode editar o código em qualquer método, mas assim que começar a mexer na estrutura do projeto, pode ser necessário reiniciá-lo.

Ele está bem integrado à experiência de depuração do VS, com um novo ícone para “Aplicar alterações de código” que acionará o hot reload. Você também pode usar o novo dotnet watch comando para recarregar automaticamente em alterações de arquivo.

Propaganda

Os aplicativos da web Razor / Blazor podem atualmente fazer uso de recarregamento a quente, mas o Blazor WebAssembly ainda tem algumas coisas a serem resolvidas e atualmente não está funcionando ainda. No entanto, está sendo trabalhado e pode chegar à versão final.

Teste Remoto

O VS 2022 inclui uma visualização experimental que permite que você execute testes em outros ambientes, incluindo contêineres Linux, WSL e até mesmo por SSH.

Ele tem um pouco de configuração e, claro, você precisará ter certeza de que seu ambiente está configurado para executar seu código corretamente, mas uma vez que estiver, você poderá selecionar diferentes ambientes ao executar seus testes.

Melhorias Gerais

Há muitas pequenas mudanças a serem analisadas a partir das notas do patch, então listaremos algumas das mais interessantes aqui.

A depuração teve algumas melhorias na qualidade de vida, com novas opções de contexto para pontos de interrupção mais avançados, bem como “Forçar execução no cursor,” que irá ignorar todos os pontos de interrupção existentes e parar na linha de código que você selecionou. Isso pode ser muito útil se você quiser testar algo sem remover todos os pontos de interrupção ou pular tudo de novo manualmente.

Menu de contexto de ponto de interrupção

Forçar execução para o Cursor

As integrações Git do VS agora oferecem suporte a vários repositórios por solução, e comprometer-se em muitos repos agora é mais fácil.

Todos os ícones foram redesenhados para consistência.

Exemplos de novos ícones com fundos escuros e claros

Propaganda

Os comentários XML agora suportam comentários de várias linhas com espaços em branco preservados e blocos CDATA.

Informações rápidas para XML preservam espaços em branco

“Encontrar todas as referências” não produz mais uma saída repetida de lixo quando em um projeto de vários destinos.

Encontre Todos os Grupos de Referência Projetos Multidirecionados

O Razor Pages / Blazor obteve inúmeras integrações de edição e agora funcionará melhor com IntelliSense, realce de sintaxe e formatação melhor em blocos @code. Agora você também pode usar “View Code” em arquivos Razor, o que tem sido uma limitação irritante por um tempo.

Suporte de classificação TagHelpers

E há mais alguns modelos de projeto, incluindo aplicativos Angular e React hospedados no ASP.NET Core, que podem ser feitos com integrações de API automaticamente.

Para a lista completa de mudanças, você pode consultar as notas de versão do VS 2022.


Like it? Share with your friends!

0

What's Your Reaction?

hate hate
0
hate
confused confused
0
confused
fail fail
0
fail
fun fun
0
fun
geeky geeky
0
geeky
love love
0
love
lol lol
0
lol
omg omg
0
omg
win win
0
win

0 Comments

Your email address will not be published. Required fields are marked *