Roteiro do Visual StudioVisual Studio Roadmap
Este documento proporciona uma prévia do trabalho que planejamos para o Visual Studio até dezembro de 2020.This document provides a peek into the work we have planned for Visual Studio through December 2020. Ele captura os recursos significativos que estamos adicionando, mas não é uma lista abrangente dos recursos.It captures significant capabilities that we are adding, but it's not a comprehensive feature list. Nossa meta é esclarecer o que está chegando para que você possa planejar atualizações e fornecer comentários sobre quais recursos tornariam o Visual Studio um ambiente de desenvolvimento mais produtivo para você e sua equipe.Our goal is to clarify what's coming so you can plan for upgrades and provide feedback on which features would make Visual Studio a more productive development environment for you and your team.
Nosso roteiro é orientado amplamente pelo que aprendemos por meio de pesquisas de clientes contínuas, bem como os comentários que obtemos por meio de nosso portal Developer Community.Our roadmap is driven largely by what we learn through ongoing customer research, as well as the feedback we get via our Developer Community portal. Esses recursos e cronogramas representam nossos planos atuais, mas podem mudar com base no que aprendemos.These features and time frames represent our current plans but may change based on what we learn. Se houver recursos que são particularmente importantes para você, vote e comente sobre os recursos no portal Developer Community.If there are features that are particularly important to you, please be sure to vote and comment on the features in the Developer Community Portal.
Estamos interessados no que você acha a respeito da atualização mais recente do roteiro.We are interested in what you think about the latest roadmap update. Preencha esta pesquisa rápida para dar a sua opinião.Please fill out this quick survey to tell us what you think.
Os itens de cada seção são classificados por status atual e incluem os seguintes ícones:Items in each section are sorted by current status and include the following icons:
- Nenhum ícone – PlanejadoNo icon - Planned
– Em andamento
- In Progress
– Concluído
- Completed
NúcleoCore
- Nova experiência de Git focada na capacidade de descoberta e na usabilidadeNew Git experience focused on discoverability and usability
Clonar um repositório fechará o código existente, mostrará um progresso uniforme e abrirá o novo repositório
Cloning a repository closes existing code, shows uniform progress, and opens the new repository
Criar e gerenciar branches na janela de ferramentas Alterações Git
Create and manage branches in the Git Changes tool window
O Git será definido como o provedor SCC padrão para todas as novas instalações
Git is set as the default SCC provider for all new installations
Aprimoramentos na Experiência de Mesclagem e Conflito do Git
Git Merge and Conflict Experience Improvements
Aproveitar uma experiência de autenticação nativa do GitHub para acessar os recursos do GitHub localmente
Leverage a native GitHub authentication experience to access your GitHub resources locally
Carregar projetos do .NET por padrão depois de clonar um único repositório de soluções
Load .NET projects by default after cloning a single solution repository
Executar ações de loop interno do Git por meio de uma janela de ferramentas Git simplificada
Perform inner loop Git actions through a simplified Git tool window
Publicar um repositório local no GitHub, bem como em outros serviços de hospedagem do Git
Publish a local repository to GitHub and other Git hosting services
Alternar de modo rápido entre os repositórios Git usando um menu de nível superior
Quickly switch between your Git repositories using top level menu
Resolver conflitos de mesclagem usando elementos visuais atualizados e uma experiência de execução aprimorada
Resolve merge conflicts with updated visuals and better performing experience
Selecionar uma opção em uma lista de soluções e outras exibições ao abrir um repositório Git
Select from a list of solutions and other views when opening a Git repository
Usar a janela do Repositório Git para gerenciar os repositórios Git, branches e commits
Use the Git Repository window to manage your Git repositories, branches, and commits
Exibir indicadores de status e mensagens de êxito de maneira consistente na janela de ferramentas Alterações Git
View status indicators & success messages consistently in the Git Changes tool window
- Criar, editar, compilar e depurar o ASP.NET Core, o .NET Core, o CMake e aplicativos C++ em Codespaces do GitHubCreate, edit, build and debug ASP.NET Core, .NET Core, CMake & C++ apps in GitHub Codespaces
Integrar o Serviço de Terminal com o LiveShare
Integrate Terminal Service with LiveShare
Abrir arquivos ao usar um Codespace do GitHub será assíncrono durante a Exibição de Pasta
Opening files while using a GitHub Codespace is asynchronous while in Folder View
Habilitar o comando "Abrir no Terminal" no Gerenciador de Soluções no Nexus
Enable "Open in Terminal" command in Solution Explorer in Nexus
Aprimorar a paridade de recursos na Lista de Erros ao usar um Codespace do GitHub
Improve feature parity in Error List while using a GitHub Codespace
- A correção da percepção da edição Community não é gratuitaFix perception Community edition is not free
- Aprimore a experiência nativa do GitHub habilitando o SSO, o roaming da conta e os aprimoramentos de microfones da UXEnhance the native GitHub experience by enabling SSO, account roaming and mics UX improvements
- Simplifique a UX de entrada do Visual Studio CommunitySimplify the Visual Studio Community sign in UX
- Navegar e pesquisar em códigos dentro e entre grandes repositóriosSearch and navigate code within and across large repositories
Suporte para um Moniker de Símbolo para RichNavigation
Support for Symbol Moniker support for RichNavigation
Obter resultados da Localização Rápida com a mesma velocidade e o desempenho do diálogo Localizar em Arquivos
Get Quick Find results with the same speed and performance of the Find in Files dialog
- Aprimorar o suporte para redes corporativas usando o acesso condicionalImprove support for enterprise networks using conditional access
Adicionar uma opção para autenticar somente usuários em seus respectivos locatários da página inicial sempre que eles adicionarem contas e aprimorarem o desempenho de conexão
Add option for only authenticating users against their home tenants whenever they add accounts and improve sign-in performance
- Começar a usar o Visual Studio como um novo usuário é fácilEasy to get started as a new user to Visual Studio
Como usuário, acho que os resultados do recurso de Pesquisa do Visual Studio são relevantes
As a user, I find Visual Studio Search feature results to be relevant
- Abrir grandes soluções e trabalhar com elas rapidamenteOpen and work with large solutions rapidly
Aprimoramentos de desempenho durante a geração de Código
Performance improvements during Code generation
- Usar as conclusões no IntelliSense como itens de destaque, derivados de análises do códigoUse completions in IntelliSense as starred items, derived from analyses of your code
- Navegar, filtrar e pesquisar tíquetes da Developer Community com mais facilidadeNavigate, filter, and search for Developer Community tickets more easily
- Desenvolver extensões que funcionam quando conectadas aos CodespacesDevelop extensions that work when connected to Codespaces
C++C++
- Conformidade com o C++20: Recursos de linguagem e biblioteca do C++20 no compilador, nas bibliotecas e no IDEC++20 conformance: C++20 language & library features in compiler, libs & IDE
Adicionar suporte ao depurador para char8_t (C++20)
Add debugger support for char8_t (C++20)
Suporte ao IntelliSense do C++ para bibliotecas de Conceitos e Intervalos do C++20
C++ IntelliSense Support for C++20 Concepts and Ranges libraries
Conformidade padrão com Corrotinas do C++20 no MSVC no modo /std:c++latest
C++20 Coroutines standard conformance in MSVC under /std:c++latest mode
Conformidade padrão com Módulos do C++20 no MSVC no modo /std:c++latest
C++20 Modules standard conformance in MSVC under /std:c++latest mode
Suporte de módulos do C++20 no IntelliSense
C++20 Modules support in IntelliSense
Pré-processador padrão compatível com o C11 no MSVC
C11 standard conformant preprocessor in MSVC
Suporte inicial de módulos do C++20 no IntelliSense
Initial C++20 Modules support in IntelliSense
Suporte inicial a conceitos do C++20 no IntelliSense
Initial support for C++20 Concepts in IntelliSense
bit_cast do compilador do MSVC e outros recursos de conformidade padrão do C++20
MSVC compiler bit_cast and other C++20 standard conformance features
Namespaces embutidos e aninhados do compilador do MSVC, tipos de classe em parâmetros de modelo sem tipo e outros recursos de conformidade padrão do C++20
MSVC compiler nested inline namespaces, class types in non-type template parameters, and other C++20 standard conformance features
std::span para a biblioteca padrão do C++20 em STL do MSVC
std::span for C++20 standard library in MSVC STL
Suporte à corrotinas de estilo do C++20
Support C++20 style coroutines
Melhorias de conformidade padrão do constexpr do C++20 no MSVC
C++20 constexpr standard conformance improvements in MSVC
Suporte a recursos padrão de módulos do C++20 na análise de código do MSVC
C++20 Modules standard feature support in MSVC Code Analysis
Recursos de biblioteca padrão do C++20 em STL do MSVC. Para obter uma lista completa, confira o Log de alterações da STL no GitHub
C++20 Standard Library features in MSVC STL. For a full list, please refer to the STL Changelog on GitHub
Intervalos para a biblioteca padrão do C++20 em STL do MSVC
Ranges for C++20 standard library in MSVC STL
- Direcionar sistemas semelhantes ao Unix com C++Target Unix-like systems with C++
A experiência do Linux com C++ é compatível com mais shells e distribuições Linux
C++ Linux experience supports more Linux distros and shells
Diagnosticar as dependências ausentes em projetos do Linux com C++
Diagnose missing dependencies in C++ Linux projects
Editar e definir conexões remotas padrão no Gerenciador de Conexões
Edit and set default remote connections in the Connection Manager
Builds incrementais aprimorados para projetos Linux baseados em MSBuild
Improved incremental builds for MSBuild-based Linux projects
Suporte do Ninja para CMake para Linux
Ninja support for CMake for Linux
Suporte para depurar projetos do CMake com o gdbserver
Support for debugging CMake projects with gdbserver
Compilar e depurar nativamente no WSL2
Build and debug natively on WSL2
- Suporte a Makefile para WSLMakefile Support for WSL
- Integração da janela do terminal do Visual Studio ao criar e depurar programas do LinuxVisual Studio Terminal Window integration when building and debugging Linux programs
- Grandes ISVs que fazem um desenvolvimento de multiplataformas com C++ (Windows/Linux) e adotam o Visual Studio como o ambiente de desenvolvimento principalLarge ISVs doing C++ cross-platform development (Windows/Linux) adopt Visual Studio as their primary dev environment
Build com LLVM do Prompt de Comando do Desenvolvedor
Build with LLVM from the Developer Command Prompt
Depurar despejos de núcleo do Linux (nativo)
Debug Linux core dumps (native)
Suporte para Clang/LLVM de 64 bits
Support for 64-bit Clang/LLVM
- Suporte para Compile_commands.jsonCompile_commands.json support
- Facilitar desenvolvimento do CMake com Visual StudioEase CMake development with Visual Studio
Navegação de código para scripts do CMake (Navegação, Localizar Referências, Ir Para)
Code Navigation for CMake Scripts (Browsing, Find References, Go To)
Adicionar, remover e renomear arquivos e destinos com facilidade em projetos do CMake
Easily Add, Remove, and Rename Files and Targets in CMake Projects
Aproveitar o IntelliSense em projetos CMake destinados ao Android ou incorporados
Leverage IntelliSense in CMake projects targeting Android or embedded
- Interagir com configurações de nível de destino do CMakeInteract with CMake target-level settings
- Conformidade com o C17C17 conformance
Recursos necessários do C11 (Versão Prévia)
C11 Required Features (Preview)
Conformidade de linguagem com o C11/17 no MSVC
C11/17 language conformance in MSVC
DiagnósticosDiagnostics
- Analisar rastreamentos de desempenho do ASP.NET Core em segundosAnalyze ASP.NET Core performance traces in seconds
Exibição de backtrace na ferramenta de alocação do .NET
Backtrace view in the .NET allocation tool
Ferramenta de uso da CPU no Criador de Perfil de Desempenho inclui a página de resumo
CPU Usage tool in the Performance Profiler includes summary page
Visualizar eventos para arquivos .diagsession e .nettrace
Event viewer for .diagsession and .nettrace files
A caixa de diálogo exe de inicialização do Criador de Perfil de Desempenho é temática
Performance Profiler launch exe dialog is themed
Caixa de diálogo temática de configurações do Profiler para ferramentas de aceitação
Profiler settings dialog themed for tools that opt in
Página de resumo para a ferramenta de uso da CPU
Summary page for CPU usage tool
Suporte a Marcas de Usuário Personalizadas para a criação de perfil de Hubs de Diagnóstico
Support Custom User Marks for Diagnostics Hub profiling
Ferramenta para exibir os contadores de desempenho do .NET Core
Tool to view .NET Core performance counters
Criação de perfil de instrumentação dinâmica para .NET Core
Dynamic instrumentation profiling for .NET Core
- Aprimorar o tempo de compilação de calltree para a ferramenta de alocação do .NET em 25% do atualImprove calltree building time for .NET Alloc tool by 25% of current
- Coletar e analisar dados dos serviços de produção para resolver problemas comunsCollect and analyze data from production services to resolve common problems
Análise automática async void do .NET e do .NET Core
.NET and .NET Core async void auto analysis
O .NET e o .NET Core sincronizam por meio de uma análise automática assíncrona
.NET and .NET Core sync over async auto analysis
Análise automática da fila do finalizador do .NET Core
.NET Core finalizer queue auto analysis
Comportamento de depuração consistente para código descompilado
Consistent stepping behavior for decompiled code
Habilitar um caminho crítico de memória do .NET e do .NET Core na Ferramenta de Memória
Enable .NET and .NET Core memory hot path in Memory Tool
Habilitar a anexação do Depurador de Instantâneos sem a necessidade de uma reinicialização nos Serviços de Aplicativos
Enable attaching the Snapshot Debugger without requiring a restart in App Services
- Análise automática do deadlock do .NET Core.NET Core deadlock auto analysis
- Diagnosticar problemas em aplicativos do .NET Core em execução no LinuxDiagnose issues in .NET Core apps running on Linux
Suporte à depuração de despejos de núcleo do Linux do .NET Core
.NET Core Linux core dump debugging support
Ferramenta de banco de dados para .NET Core no Linux
Database tool for .NET Core on Linux
Suporte para 'Propriedades Fixas' para depuração do xplat .NET
Support for 'Pinnable Properties' for xplat .NET debugging
A ferramenta é compatível com contadores de arquivos .nettrace
Tool supports counters from .nettrace files
Suporte ao Vsdbg para opções de inspeção de variáveis
Vsdbg support for variable inspection options
Suporte para .NET Core no Linux
Support for .NET Core on Linux
- Depurar Codespaces do GitHubDebug GitHub Codespaces
Suporte a pontos de interrupção de dados
Support data breakpoints
Suporte gerenciado para Editar e Continuar no adaptador de depuração
Managed Edit and Continue support in the debug adapter
Suporte para 'Anexar ao Processo'
Support for 'Attach to Process'
- Suporte para visualizadores .NET personalizadosSupport for custom .NET visualizers
- Suporte para pesquisa de EESupport for EE search
- Depurar aplicativos usando os Serviços de Aplicativos para Linux, .NET Core do ARM64 no Linux e .NET 5Debug apps using App Services for Linux, ARM64 .NET Core on Linux and .NET 5
Suporte de depuração para executáveis de arquivo único .NET 5
Debugging support for .NET 5 single file executables
Os desenvolvedores que usam .NET 5 têm os recursos de depurador que esperam
Developers using .NET 5 have the debugger features they expect
Depuração do Open Enclave no Visual Studio para computação confidencial do Azure
Open Enclave debugging in Visual Studio for Azure Confidential Computing
.NET.NET
- Os aplicativos .NET 5 do Windows Forms têm experiência de designer completaWindows Forms .NET 5 applications have full designer experience
Habilitar a Localização
Enable Localization
Habilitar a Impressão
Enable Printing
Itens podem ser adicionados à Caixa de Ferramentas do novo designer
Items can be added to the Toolbox in the new designer
Fornecedores de componentes de terceiros podem habilitar os controles no designer do WinForms Core
Third-party component vendors can enable their controls in WinForms Core designer
Usar controles "Common" e controles "All Windows Forms"
Use "Common" controls & "All Windows Forms" controls
Usar Caixas de Diálogo
Use Dialogs
Usar Menus e Barras de Ferramentas
Use Menus & Toolbars
Usar Controles de Usuário e Extensibilidade
Use User Controls & Extensibility
Os aplicativos do Visual Basic .NET 5 do WinForms têm experiência de designer
WinForms VB .NET 5 applications have designer experience
Habilitar experiências relacionadas a dados
Enable data-related experiences
O novo designer do WinForms tem um bom desempenho
New WinForms designer has good performance
- Usar caixas de diálogo HerdadasUse Inherited dialogs
- Usar recursos de produção internos para tarefas de desenvolvimento comunsUse built-in productive capabilities for common development tasks
Adicionar refatoração de conversão explícita para permitir que você adicione uma conversão explícita quando uma expressão for implícita
Add Explicit Cast Refactoring to allow you to to add an explicit cast when an expression is implicit
Adicionar cabeçalhos a arquivos de origem automaticamente uma vez configurados usando o EditorConfig
Add headers to source files automatically once configured using EditorConfig
Habilitar o parâmetro de adição ao usar Alterar Assinatura do Método
Enable adding parameter while using Change Method Signature
Habilitar o fornecimento de analisadores de código no SDK para fornecer novos recursos de maneira mais rápida aos usuários
Enable delivering code analyzers in SDK to deliver new features faster to users
Extrair uma Refatoração de Superclasse para permitir extrair determinados membros de uma classe selecionada para incluir em uma nova classe base
Extract Superclass Refactoring to allow you to extract certain members from a selected class into a new base class
Embutir uma Refatoração de Método para permitir reverter o método de extração
Inline Method Refactoring to allow you to do the reverse of extract method
Embutir Dicas de Nomes do Parâmetro
Inline Parameter Name Hints
Mover analisadores do IDE para o pacote NuGet para dar suporte à CI
Moving IDE analyzers to NuGet package for CI support
Novo aviso e correção de código para remover supressões desnecessárias do pragma
New warning and code fix to remove unnecessary pragma suppressions
- Usar aprimoramentos em ProjetosUse improvements in Projects
Suporte às referências de pacote em C++ CLI
Package references support in C++ CLI
Adicionar suporte para o aninhamento de arquivos em todos os tipos de projeto
Add support for file nesting in all project types
- Exatidão do nó de dependências e usabilidade aprimoradaDependencies node correctness and improved usability
- A execução do .NET no Azure é aprimorada.NET runs best on Azure
Habilitar o suporte do Azure Functions v3 em ferramentas
Enable Azure Functions v3 support in tools
Aprimorar a experiência de publicação para o Serviço de Aplicativo no Linux
Improve publish experience for App Service Linux
- Aprimorar experiências de teste para desenvolvedores no .NET CoreImprove test experiences for developers on .NET Core
- Criar e editar arquivos YAML com colorização e lintCreate and edit YAML files with colorization and linting
InstalaçãoSetup
- Integração aos Codespaces do GitHub com uma instalação personalizada para .NET Core e C++Onboard to GitHub Codespaces with customized setup for .NET Core and C++
Aprimorar a Ajuda fornecida pela ferramenta DevInit.exe
Improve Help provided by DevInit.exe tool
- Permanecer seguro em ambientes corporativos gerenciadosStay secure in managed enterprise environments
Os gerentes de TI corporativa podem implantar atualizações para o Visual Studio 2017/2019 via MU/SCCM/WSUS
Enterprise IT managers can deploy updates to Visual Studio 2017/2019 via MU/SCCM/WSUS
Ferramentas da WebWeb Tools
- Usar o Visual Studio para criar/compilar aplicativos .NET Core/ASP.NET Core 5.0Use Visual Studio to create/build .NET Core/ASP.NET Core 5.0 apps
Provedor .NET em NPD
.NET Provider in NPD
Atualizações de pacotes e outras mudanças correspondentes ao Net 5.0
Package updates & other changes corresponding to Net 5.0
Experiência de scaffolding com .NET Core 5.0
Scaffolding experience with .NET Core 5.0
- Depurar projetos do Blazor WebAssemblyDebug Blazor WebAssembly projects
Adicionar opções de autenticação WebAssembly do Blazor (com provisionamento)
Add Blazor WebAssembly authentication options (with provisioning)
Habilitar o suporte de atualização automática para o WebAssembly do Blazor
Enable auto-refresh support for Blazor WebAssembly
Introduzir o suporte do Visual Studio para a depuração de WebAssembly do Blazor
Introduce Visual Studio support for Blazor WebAssembly debugging
XamarinXamarin
- Conjunto abrangente de controles xplatComprehensive set of xplat controls
GA de AdaptiveTriggers/StateTriggers
AdaptiveTriggers/StateTriggers GA
GA do CarouselView
CarouselView GA
F100: adicionar MediaElement
F100: Add MediaElement
GA do IndicatorView
IndicatorView GA
RadioButton
RadioButton
GA do SwipeView
SwipeView GA
- Criar em todas as plataformas móveis de modo mais rápido com a Reinicialização DinâmicaBuild on all mobile platforms faster with Hot Restart
- Usar os SDKs do Android mais recentes por padrãoUse the latest Android SDKs by default
XAMLXAML
- Criar aplicativos XAML de maneira produtivaCreate XAML apps productively
Suporte do .NET Core e do .NET Standard para ferramentas de arquitetura
.NET Core and .NET Standard support for architecture tools
Aprimoramentos de produtividade para desenvolvedores Enterprise trabalhando em aplicativos de linha de negócios
Productivity improvements for Enterprise developers working on line-of-business applications
O WPF Designer carrega de modo rápido, é executado de maneira confiável e habilita os principais cenários para desenvolvedores Enterprise (.NET Core 3)
WPF Designer loads quickly, runs reliably, and enables key scenarios for Enterprise developers (.NET Core 3)
Suporte para Recarga Dinâmica de XAML para recursos de tema e Generic.xaml
XAML Hot Reload support for Generic.xaml and theme resources
Medir e aprimorar continuamente o sucesso dos desenvolvedores corporativos de XAML
Continuously measure and improve success of Enterprise XAML developers
O Designer exibe conteúdos de modo correto e funciona bem com Controles de Limite de Dados
Designer Shows Content Correctly and works well with Data Bound Controls
Experiência de Ações Sugeridas do Designer (Lâmpada do Designer)
Designer Suggested Actions Experience (Designer Light Bulb)
Os desenvolvedores de desktop empresarial podem modernizar de maneira incremental os aplicativos existentes
Enterprise desktop developers can incrementally modernize their existing applications
Aprimorar a Experiência de diagnóstico de Associação
Improve Binding diagnostic Experience
Melhorar o Designer XAML para WPF do .NET Core e para a UWP
Improve the XAML Designer for .NET Core WPF and for UWP
Produtividade aprimorada para criação de XAML no Editor de XAML
Improved productivity for authoring XAML in the XAML Editor
Reduzir o tamanho da instalação do Visual Studio para cargas de trabalho do Windows que exigem ferramentas de empacotamento
Reduce Visual Studio install size for Windows workloads that require packaging tooling
O T4 (Text Template Transformation Toolkit) pode usar o Runtime do .NET Core
Text Template Transformation Toolkit (T4) can use the .NET Core Runtime
- Escolha o suporte de Itens da Caixa de Ferramentas para .NET CoreChoose Toolbox Items support for .NET Core
- Os usuários devem ser capazes de preencher controles vazios usando Dados de ExemploUsers should be able to populate empty controls with Sample Data
- Criar aplicativos modernos e atraentes para WindowsBuild modern, engaging applications for Windows
Suporte moderno para C++ (C++/WinRT) para Desenvolvimento da UWP
Modern C++ (C++/WinRT) Support for UWP Development
Desenvolvedores de UWP podem aproveitar os recursos mais recentes do Windows e da plataforma
UWP developers can take advantage of the latest Windows features and platform capabilities
- Iteração rápida em XAML com Recarga Dinâmica do Xamarin.FormsRapidly iterate on XAML with Hot Reload Xamarin.Forms