loading...

VISUAL STUDIO 2015 RC DOWNLOAD

Visual Studio 2015 RC

29.04.15

Hoje, ficamos felizes em anunciar o lançamento da versão RC do Visual Studio 2015. Esta versão Release Candidate (RC) inclui muitos recursos e atualizações novos: ferramentas para desenvolvimento de aplicativos Universal Windows, desenvolvimento de plataforma cruzada para celulares iOS, Android e Windows, incluindo o Xamarin, Apache Cordova e Unity, bibliotecas C++ portáteis, modelos de atividades nativos do C++ para Android entre muitos outros.
E mais: agora, você pode assistir às nossas sessões gravadas com a compilação de 2015 conforme ficam disponíveis, ou entender tudo sobre seus recursos favoritos com os nossos mais de 40 curtas Connect(“sob demanda”);.
Para instalar a versão mais recente do Visual Studio 2015, use o link a seguir.
Para conhecer melhor a versão mais recente do TFS, veja as notas de versão RC do Team Foundation Server.
Importante: Muitos dos aplicativos que podem ser compilados com a RC do Visual Studio 2015 são considerados "prontos para publicação" e podem ser redistribuídos e usados nas configurações de produção delineadas neste contrato de licença. No entanto, eles são compilados para Windows 10 e não podem ser distribuídos ou carregados na Windows Store. Você terá que recompilar os aplicativos para o Windows 10 usando a versão final do Visual Studio 2015 antes de enviá-los à Windows Store. Além disso, lembre-se que o ASP.NET 5 ainda está na versão de visualização e não o recomendamos para uso de produção no momento. Você pode usar o ASP.NET 4.6 na produção.

Novidades na RC do Visual Studio 2015

Visual Studio:
Outras mudanças:
Versões relacionadas:

Visual C++ para desenvolvimento em plataforma cruzada

Agora ficou fácil compartilhar, reutilizar, compilar, implantar e depurar para todas as plataformas cruzadas de aplicativos, menos aquelas que tenham códigos muito específicos. Tudo dentro de uma solução única no Visual Studio. Aqui estão algumas coisas que você pode fazer:
  • Crie projetos a partir de modelos para aplicativos Native Activity do Android, ou para bibliotecas de código compartilhado que podem ser usados em múltiplas plataformas e em aplicativos Xamarin nativos do Android.
  • Use o IntelliSense específico da plataforma para explorar APIs e gerar códigos corretos para destinos no Android ou no Windows.
  • Configure sua compilação para plataformas nativas de x86 ou ARM.
  • Implante o seu código em dispositivos Android conectados ou use o emulador do Android da Microsoft para fazer testes.
  • Configure pontos de interrupção, inspecione variáveis, exiba a pilha e execute as etapas do código no depurador do Visual Studio.
  • Exiba o log de mensagens em um dispositivo Android usando o visualizador LogCat. (LogCat é uma ferramenta de diagnóstico essencial para uma boa edição de>compilação>depuração na experiência).
    Use o LogCat para fazer o seguinte:
    • Pesquisar mensagens de log específicas usando a barra de pesquisa.
    • Usar a rolagem automática de alternância para exibir com facilidade as mensagens de log futuras.
    • Limpar mensagens de log de saída anteriores.
    • Escolher entre vários níveis de log.
Também adicionamos ou atualizamos o seguinte:
  • Suporte para API Android de nível 21 (Lollipop).
  • Um novo modelo com base na criação de arquivos com suporte para Android, que permite usar um sistema de compilação externo (incluindo o NDK- BUILD).
  • Cabeçalhos pré-compilados em todos os modelos (incluindo os modelos da Biblioteca Dinâmica Compartilhada, da biblioteca estática e de plataforma cruzada com celular).

Ferramentas do Visual Studio para Apache Cordova

Antes conhecidas como Multi-Device Hybrid Apps para Visual Studio, as Ferramentas do Visual Studio para Apache Cordova tornam mais fácil compilar, depurar e testar aplicativos de plataforma cruzada para Android, iOS, Windows e Windows Phone por meio de um único projeto do Visual Studio.
Todos os recursos disponíveis nos CTPs anteriores estão agora na RC do Visual Studio 2015, incluindo as seguintes melhorias:
  • Atualização ao salvar para o Ripple – não é preciso recompilar!
  • Depure uma versão iOS do seu aplicativo por meio do Visual Studio quando ele for implementado no iOS Simulator ou em um dispositivo conectado ao Mac
  • Segurança aperfeiçoada e configuração simplificada para o agente remoto de compilação do iOS incluído
  • Experiência aprimorada em gerenciamento de plug-in, que inclui suporte para adicionar plug-ins personalizados ao seu projeto do Git ou sistema de arquivos
  • Selecione opções de configurações específicas para uma plataforma por meio de um designer de config.xml aprimorado
  • Suporte para Apache Cordova 4.0.0. 
Lemos os seus comentários e ampliamos o número de dispositivos com que você pode depurar, veja:
  • Android 4.4, Android 4.3 e anteriores com jsHybugger
  • iOS 6, 7 e 8
  • Windows Store 8.1
E ampliamos nosso suporte com depuração ainda mais. Agora, você pode depurar seus aplicativos do Apache Cordova destinados a Windows Phone 8.1.
Você pode definir pontos de interrupção, inspecionar variáveis, usar o console e executar outras tarefas de depuração no seu emulador de Windows Phone 8.1 ou dispositivo conectado.
Debugging with Visual Studio Tools for Apache Cordova 
E, agora, vamos ver as novidades da RC: Interoperabilidade de CLI. Os projetos do Cordova no Visual Studio agora são sincronizados com as mudanças feitas na sua pasta de projeto em disco. As mudanças podem passar por dentro e fora do Visual Studio sem importar se você está usando ferramentas de terceiros ou outros sistemas operacionais. (A estrutura de arquivos padrão para projetos do Cordova levam como base a estrutura esperada pelas ferramentas de linha de comando do Apache Cordova, o que facilita trabalhar diretamente com o Apache Cordova CLI ou outras ferramentas que exigem essa estrutura de pastas.)

Emulador do Visual Studio para Android

Você pode usar o Emulador do Visual Studio para Android em projetos de plataforma cruzada no Visual Studio (Xamarin ou C++) ou no Visual Studio Tools for Apache Cordova. O emulador permite que você alterne entre diferentes emuladores de plataforma sem conflitos Hyper-V. Ele oferece suporte para uma ampla variedade de sensores e simulações: localização/GPS, acelerômetro, rotação de tela, zoom, cartão SD, câmera, multitoque e acesso de rede. E também oferece suporte das versões de Android 4.4 (KitKat, API de nível 19) e 5.0 (Lollipop, API de nível 21).
E agora, a novidade da RC, o emulador do Visual Studio para Android suporta simulação WiFi e capacidade de escolher entre diversas configurações de hardware de dispositivos diferentes.

Ferramentas do Visual Studio para desenvolvimento de aplicativos Universal Windows

As ferramentas do Visual Studio para desenvolvimentos de aplicativos Universal Windows estão integradas com a configuração do Visual Studio. Essas ferramentas permitem que você compile aplicativos que são executado em todos os dispositivos com Windows, do Windows Phone ao Xbox e Windows Store. Além disso, você também pode usar essas ferramentas para compilar aplicativos da área de trabalho do Windows que aproveitam APIs do Windows 10. (Observe que, nessa versão, o Windows 10 não é compatível como uma plataforma de destino para aplicativos de produção.)
Para instalar as ferramentas de desenvolvimento para aplicativos Universal Windows, escolha Personalizado nas configurações do Visual Studio; clique em Avançar e, em seguida, escolha "Ferramentas de Desenvolvimento de Aplicativos Universal Windows".
Também nesta nova RC: Você pode criar, atualizar, compilar, implantar e depurar aplicativos do Windows usando HTML e JavaScript.  Suporte EnC em CoreCLR para Windows 10: Você pode editar e continuar quando estiver depurando aplicativos .NET no Windows Phone 10.
Para conseguir mais informações sobre o desenvolvimento de aplicativos do Windows, veja o Guia para aplicativos Universal Windows e o portal Windows Insider.

Visual C++

Nesta versão, o compilador C++ e a biblioteca padrão foram atualizados com suporte aprimorado para C++11 e suporte inicial para determinados recursos de C++14. Também foi incluído suporte preliminar para recursos que devem aparecer no padrão C++17.
Mais de 500 falhas de compilador foram corrigidas, incluindo muitas falhas que foram enviadas pelos clientes no Microsoft Connect  ­— obrigado!

Recursos de linguagem

  • Loops for baseados em intervalo concisos O especificador do tipo de elemento agora pode ser omitido de loops for baseados em intervalo. A forma concisa for(widget : widgets) {…} é equivalente à forma que for mais longa em C++11 (auto&& widget : widgets) {…}. Proposto para o C++17 [N3994]
  • Funções retomáveis (resume/await) As palavras-chave resume e await fornecem suporte em nível de linguagem para programação assíncrona e habilitam funções retomáveis. Atualmente, este recurso só está disponível para alvos x64. Proposto para C+ +17 [N3858]
  • Expressões lambda genéricas (polimórficas) Os tipos de parâmetro de função lambda agora podem ser especificados usando auto; o compilador interpreta auto, neste contexto, como significando que o operador de chamada da função fechamento é um modelo de função de membro e que cada uso de auto na expressão lambda corresponde a um parâmetro de tipo de modelo diferente. C++14
  • Expressões lambda de captura generalizadas Também conhecidas como init-capture. O resultado de uma expressão arbitrária agora pode ser atribuído a uma variável na cláusula de captura de uma lambda. Isso faz com que tipos somente de movimentação sejam capturados por valor, permitindo que uma expressão lambda defina membros de dados arbitrários em seu objeto de fechamento. C++14
  • Literais binários Literais binários são suportados agora. Esses literais são prefixados com 0B ou 0b e consistem apenas nos dígitos 0 e 1. C++14
  • Dedução de tipo de retorno O tipo de retorno de funções normais pode agora ser deduzido, incluindo funções com múltiplas instruções de retorno e funções recursivas. Essas definições de função são precedidas pela palavra-chave auto com em definições de funções com um tipo de retorno à direita, embora este último seja omitido. C++14
  • decltype(auto) Dedução de tipo que usa a palavra-chave auto para inicializar expressões, retirando qualificadores ref e qualificadores cv de nível superior da expressão. O decltype(auto) preserva qualificadores ref e cv e agora pode ser usado em qualquer lugar onde auto possa ser usado, exceto para introduzir uma função com um tipo de retorno inferido ou à direita. C++14
  • Geração implícita de funções move de membro especial Agora, os construtores move e operadores de atribuição move serão implicitamente gerados quando as condições permitirem, fazendo, assim, com que o compilador esteja em plena conformidade com as referências rvalue em C++11. C+ +11
  • Herdar construtores Uma classe derivada agora pode especificar se vai herdar os construtores da classe base, Base, ao incluir a instrução usando Base::Base; na definição. Uma classe derivada só poderá herdar todos os construtores de sua classe base, não é possível herdar apenas construtores base específicos. Uma classe derivada não poderá herdar de múltiplas classes base se essas tiverem construtores com uma assinatura idêntica, e a classe derivada também não poderá definir um construtor que tenha uma assinatura idêntica à de qualquer um dos construtores herdados. C++11
  • Consulta e controle de alinhamento O alinhamento de uma variável pode ser consultado por meio do operador alignof() e controlado por meio do especificador alignas(). O alignof() retorna o limite de byte em que as instâncias do tipo devem ser alocadas; para referências, ele retorna o alinhamento do tipo referenciado, e para matrizes, retorna o alinhamento do tipo de elemento. O alignas() controla o alinhamento de uma variável; é necessário haver uma constante ou um tipo, em que um tipo é abreviatura para alignas(alignof(type)). C++11
  • Sizeof ampliado O tamanho da variável de um membro classe ou struct pode agora ser determinado sem uma instância de classe ou struct por meio do sizeof(). C++11
  • constexpr Suporte parcial para constexpr em C++11. Atualmente, falta suporte para inicialização de agregação e passagem ou retorno de tipos literais de classe. C++11 (parcial)
  • Literais definidos pelo usuário (UDL) Agora, sufixos significativos podem ser acrescentados a literais numéricos e de sequência de caracteres para fornecer-lhes uma semântica específica. O compilador interpreta literais com sufixo como chamadas ao operador UDL apropriado. C++11
  • Estáticos "Mágicos" thread-safe As variáveis locais estáticas são agora inicializadas de forma thread-safe, eliminando a necessidade de sincronização manual. Só a inicialização é thread-safe, o uso de variáveis locais estáticas por múltiplos threads ainda precisa ser sincronizado manualmente. O recurso de variáveis estáticas thread-safe pode ser desativado por meio do sinalizador /Zc:threadSafeInit- para evitar uma dependência no CRT. C++11
  • Armazenamento local de thread Use a palavra-chave thread_local para declarar que um objeto independente deve ser criado para cada thread. C++11
  • noexcept O operador noexcept agora pode ser usado para verificar se um expressão pode gerar uma exceção. O especificador noexcept agora pode ser usado para especificar que uma função não gera exceções. C++11
  • Namespaces embutidos Agora, um namespace pode ser especificado como embutido para hospedar seu conteúdo dentro do namespace delimitador. Os namespaces embutidos podem ser usados para criar bibliotecas com versões que, por padrão, expõem a versão mais recente, ao mesmo tempo em que deixam versões de API anteriores explicitamente disponíveis. C++11
  • Uniões irrestritas Um tipo união agora pode conter tipos com construtores não-triviais. Os construtores para essas uniões precisam ser definidos. C++11
  • Novos tipos de literais de caracteres e unicode Literais de caracteres e de sequências de caracteres em UTF-8, UTF-16 e UTF-32 são agora suportados, e novos tipos de caracteres char16_t e char32_t foram introduzidos. Literais de caracteres podem ser prefixados com u8 (UTF-8), u (UTF-16) ou U (UTF-32), como em U'a', ao passo que literais de sequências de caracteres podem, ainda, ser prefixados com equivalentes de sequências de caracteres brutas u8R (sequência de caracteres bruta UTF-8), uR (sequência de caracteres bruta UTF-16) ou UR (sequência de caracteres bruta UTF-32). Nomes de caracteres universais podem ser usados livremente em literais unicode, como em u'\u00EF', u8"\u00EF is i" e u"\U000000ef is I". C++11
  • __func__ O identificador predefinido __func__ está implicitamente definido como uma sequência de caracteres que contém o nome não qualificado e não adornado da função de circunscrição.
  • __restrict  O __restrict agora pode ser aplicado a referências.
  • Palavra-chave Typename. Os usuários agora podem gravar typename em vez de class em um parâmetro de modelo de modelo.
Adicionamos os seguintes recursos novos para aproximar o compilador às conformidades com os padrões definidos no Visual Studio 2012 e Visual Studio 2013:
  • Separadores de dígito: agora, você pode intercalar literais numéricos com estimativas únicas para torná-los mais legíveis. Por exemplo, int x = 1’000’000;
  • Nomes de caracteres universais em literais: Você pode gravar caracteres básicos, como 'A' e o caractere de alimentação de linha, como pontos de código em literais. Por exemplo, const char *s = “\u0041\u000A”;

Recursos da biblioteca do Visual C++

  • Literais definidos pelo usuário (UDLs) para tipos de biblioteca padrão O <chrono>, <string>e <complexo> em cabeçalhos agora fornecem operadores UDL. Por exemplo: 123ms significa std::chrono::milliseconds(123), "hello"s significa std::string("hello") e 3.14i means std::complex(0.0, 3.14).
  • Iteradores Null Forward A biblioteca padrão agora permite a criação de iteradores forward que não se referem a uma instância recipiente. Esses iteradores são inicializados por valor e comparam igual para um tipo particular de recipiente. A comparação de um iterador inicializado por valor a outro que não seja inicializado assim é indefinida. C++14
  • quoted() A biblioteca padrão agora suporta a função quoted() para tornar mais fácil o trabalho com valores de sequências de caracteres entre aspas e de E/S. Com a função quoted(), uma sequência inteira de caracteres entre aspas é tratada como uma única entidade (como sequências de caracteres sem espaços em branco são tratadas em fluxos E/S); além disso, as sequências escape são preservadas durante operações de E/S. C++14
  • Pesquisa associativa heterogênea A biblioteca padrão agora suporta funções de pesquisa heterogênea para recipientes associativos. Essas funções habilitam a pesquisa por tipos diferentes de key_type, desde que o tipo seja comparável a key_type. C++14
  • Sequências de integrais de tempo de compilação A biblioteca padrão suporta agora o tipo integer_sequence, que representa uma sequência de valores de integrais que pode ser avaliada durante o tempo de compilação para funcionar mais fácil com pacotes de parâmetros e para simplificar determinados padrões de programação modelo. C++14
  • exchange() A biblioteca padrão agora suporta a função de utilitário std::exchange() para atribuir um novo valor a um objeto e retornar seu valor antigo. Para tipos complexos, a função exchange() evita que se copie o valor antigo quando um construtor move está disponível, evita que se copie o novo valor se for temporário ou tiver sido movido e aceita qualquer tipo como novo valor, aproveitando-se de qualquer operador de atribuição conversor. C++14
  • equal(), is_permutation(), mismatch() de intervalo duplo A biblioteca padrão agora suporta sobrecargas para std::equal(), std::is_permutation() e std::mismatch() que aceitem dois intervalos. Essas sobrecargas verificam se as duas sequências têm o mesmo comprimento, retirando esta responsabilidade do código de chamada; para sequências que não suportam os requisitos de um iterador aleatório, as sobrecargas verificam o comprimento enquanto comparam elementos, o que é mais eficiente. C++14
  • get<T>() A biblioteca padrão agora oferece suporte para a função de modelo get<T>() para permitir que os elementos de tupla sejam manipulado de acordo com seus tipos. Se uma tupla contém dois ou mais elementos do mesmo tipo get<T>(), ela não pode ser manipulada por tal tipo, mas outros elementos de tipo único ainda podem ser. C++14
  • tuple_element_t A biblioteca padrão agora oferece suporte para o alias de tipo tuple_element_t<I, T> que é um alias para typename tuple_element<I, T>::type. Essa mudança traz mais conveniência para programadores de modelos, como acontece com outros aliases do tipo metafunção. <type_traits>.  C++14
  • Especificação técnica do sistema de arquivos "V3" A implementação da Especificação técnica do sistema de arquivos foi atualizada para a versão 3. [N3940]
  • Alocadores mínimos A biblioteca padrão agora suporta a interface de alocador mínimo; entre as correções importantes estão std::function, shared_ptr, allocate_shared() e basic_string. C++11
  • <chrono> Os tipos chrono high_resolution_clock e steady_clock foram corrigidos. C++11

Compilações mais rápidas no Visual C++

  • Geração de Código para Link-Time (LTCG) incremental A vinculação incremental agora pode ser usada junto com a LTCG para reduzir o tempo de vinculação de aplicativos que usam LTCG. Ative este recurso por meio das opções do vinculador /LTCG:incremental e /LTCG:incremental_rebuild. \
  • Vinculação incremental para bibliotecas estáticas As mudanças nas bibliotecas estáticas que são referenciadas por outros módulos de código agora se vinculam incrementalmente.
  • O /Debug:FastLink reduz substancialmente os tempos de vinculação ao usar novas técnicas de criação de PDB.
  • O vinculador passou por aperfeiçoamentos algorítmicos para reduzir os tempos de vinculação.
  • Os aperfeiçoamentos feitos permitirão compilar códigos pesados de modelos mais rápido.
  • Instrumentação rápida de Otimização guiada por perfil (PGO) Um novo modo de instrumentação, mais leve, para jogos e sistemas em tempo real foi introduzido na PGO. O novo modo, aliado a outros recursos disponibilizados nas opções do vinculador /GENPROFILE e /FASTGETPROFILE, permite que você equilibre a qualidade do código e ganhe velocidade ao usar a PGO.
  • Redução de tamanho de arquivo-objeto Os aperfeiçoamentos nas bibliotecas padrão de compilador e C++ resultaram em arquivos objetos e bibliotecas estáticas significativamente menores. Esses aperfeiçoamentos não afetam o tamanho de Bibliotecas de vínculo dinâmico (DLLs) ou executáveis (EXEs) porque o código redundante foi removido do histórico pelo vinculador.

Qualidade de código e desempenho no Visual C++

  • Melhorias na vetorização automática. Aperfeiçoamos a vetorização de fluxo de controle (if-then-else), a vetorização ao compilar sob /O1 (tamanho mínimo) e a qualidade de código do vetor como um todo, incluindo suporte para o Parallel STL, vetorização de loops for baseados em intervalo e suporte a loop #pragma (ivdep).
  • Melhorias na otimização escalar. Adicionamos melhor geração de código para operações de teste de bit, mescla de fluxo de controle e otimizações (alternância loop-if) e outras otimizações escalares (por exemplo, melhor geração de código para std::min e std::max).
  • Otimização guiada por perfil (PGO). Fizemos vários aperfeiçoamentos na PGO, tais como conjuntos de referências aprimorados, maior capacidade de layout de dados e possibilidade de reutilizar endentações anteriores, velocidade x tamanho e decisões de layout.
  • Proteção de fluxo de controle (CFG). Adicionamos um novo recurso de segurança: é só adicionar uma nova opção ao seus projeto e o compilador do Visual C++ acrescentará verificações de segurança adicionais aos seus binários, o que ajuda a detectar tentativas de roubar seu código. Quando a verificação detecta algo, ela interrompe a execução do seu código antes que alguém possa danificar os seus dados ou computador.

    Observação: Atualizamos as opções de comando. Em vez de usar /d2guard4 como você fazia nas versões anteriores, agora, você pode usar /guard:cf.

Produtividade, depuração e diagnóstico no Visual C++

Adicionamos suporte a refatoração para C++ com os seguintes recursos:
  • Renomear símbolo Muda todas as ocorrências de um símbolo para um novo nome.
  • Extração de função Move o código selecionado para sua própria função. Essa refatoração está disponível como uma extensão do Visual Studio na  Galeria do Visual Studio.
  • Implementar virtuais puras Gera definições de função para funções virtuais puras herdadas por uma classe ou estrutura. Existe suporte para heranças múltiplas e recursivas. Ativa essa refatoração por meio da definição de classe herdada para implementar todas as funções virtuais puras herdadas ou por meio de um especificador de classe base para implementar funções virtuais puras apenas dessa classe.
  • Criar declaração ou definição Gera uma declaração por meio de uma definição existente ou uma definição padrão por meio de uma declaração existente. Acessa a refatoração por meio da declaração ou definição existente, ou por meio do indicador Lâmpada.
  • Definição da função move Move o corpo de uma função entre o código fonte e os arquivos de cabeçalho. Ativa esse refatoração por meio da assinatura da função.
  • Converter para literal de sequência de caracteres brutos Converte uma sequência de caracteres contendo sequências de escape em uma literal de sequência de caracteres brutos. As sequências de escape suportadas são \n (nova linha), \t (guia), \' (aspas simples), \" (aspas duplas) e \? (interrogação). Ative esse recurso clicando com o botão direito em qualquer ponto de uma sequência de caracteres.
Os aperfeiçoamentos no banco de dados do programa (PDB) do Visual C++ incluem o seguinte:
  • Aumento na velocidade de Escaneamento de solução, especialmente para soluções grandes.
  • Operações como a Definição Go To não são mais bloqueadas durante o escaneamento inicial de soluções, quando uma solução é aberta pela primeira vez.
O Localizar nos arquivos for aperfeiçoado, permitindo que os resultados subsequentes fossem acrescentados aos resultados prévios; os resultados acumulados podem ser deletados.
Melhorias na legibilidade do IntelliSense: Instanciações e typedefs de modelos complexos são simplificados na ajuda do parâmetro e em InformaçãoRápida, para torná-los mais fáceis de ler.
Visualizações de depurador no C++
Adicione visualizações do depurador Natvis ao seu projeto do Visual Studio para fácil gerenciamento e integração do controle de fonte. Os arquivos Natvis adicionados a um projeto têm precedência de avaliação sobre os visualizadores Natvis fora do projeto. Para obter mais informações, consulte Criar exibições personalizadas de objetos nativos no depurador.
Agora, você pode usar arquivos Natvis enquanto faz depuração do C++ no Android, uma novidade da RC. O depurador inclui visualizações para diversos modelos comuns e oferece suporte carregamento de arquivos personalizados que são adicionados ao projeto do C++.
Diagnóstico de memória nativa
  • As sessões de diagnóstico de memória (Alt+F2) permitem que você monitore o uso de memória de seu aplicativo nativo em tempo real.
  • Os instantâneos de memória capturam uma imagem momentânea do conteúdo de heap de seu aplicativo. Diferenças no estado de heap podem ser examinadas ao se comparar dois instantâneos de memória. Exiba tipos de objeto, valores de instância e pilhas de chamadas de alocação para acada instância depois de interromper o aplicativo.
Detecção e recuperação de deadlock aperfeiçoadas ao chamar funções C++ das janelas Inspeção e Imediata.
Diagnóstico de compilador aperfeiçoado O compilador fornece avisos avançados sobre códigos suspeitos. Novos avisos foram adicionados (por exemplo, sombreamento de variáveis e sequências de caracteres de formato printf incompatíveis). As mensagens de aviso existentes ficaram amis claras.
Os Avisos do sinalizador /Wv introduzidos após uma versão de compilador específica XX.YY.ZZZZ podem ser desabilitados usando o sinalizador /Wv:XX.YY.ZZZZ. Outros avisos, além dos especificados por meio do sinalizador /Wv, podem ser desabilitados.
Suporte aprimorado para código otimizado de depuração Código de depuração com os sinalizadores /Zi, /Zo ou /Z7 habilitados.
Diagnóstico de gráficos do Visual C++
O diagnóstico de gráficos foi aperfeiçoado com os seguintes recursos:
  • Captura consecutiva Captura até 30 quadros consecutivos por vez.
  • Captura programática Inicia a captura de quadros de maneira programática. A captura programática é especialmente útil para depurar sombreadores de cálculo em programas que nunca chamam Presente, ou quando um problema de renderização é difícil de se capturar manualmente mas pode ser programaticamente previsto por meio do estado do aplicativo no tempo de execução.
  • Lista de eventos gráficos aperfeiçoada Foi adicionada uma nova exibição de Chamadas draw, que exibe eventos capturados e seu estado em uma hierarquia organizada por essas chamadas. Você pode expandir as chamadas draw para exibir o estado do dispositivo usado no momento da chamada draw e depois expandir todos os tipos de estado para exibir os eventos que definiram os valores.
  • Suporte para Windows Phone 8.1 Os diagnósticos gráficos agora contam com suporte completo para depuração de aplicativos do Windows no emulador de telefone ou no telefone vinculado.
  • Análise de quadros de gráficos Esta ferramenta coleta medições de desempenho em quadros capturados; além disso, também realiza um conjunto de experimentos predefinidos, que ajudam a perceber como o desempenho seria afetado se várias técnicas de textura fossem aplicadas. A análise de quadros também coleta contadores de desempenho do hardware.
  • IU dedicada para análise de gráficos A nova janela do Analisador de gráficos do Visual Studio é um espaço de trabalho dedicado para a análise de quadros de gráficos.
  • Editar e aplicar sombreador Exiba o impacto de alterações em códigos sombreadores em um registro capturado sem reexecutar o aplicativo.
  • Configure as opções de captura em Ferramentas->Opções->Diagnóstico de Gráficos.
  • Ferramenta de linha de comando para captura e reprodução de quadros.
  • Suporte do diagnóstico de gráficos para DirectX 12. A ferramenta de diagnóstico de gráficos do Visual Studio agora oferece suporte problemas de renderização da depuração nos aplicativos DirectX 12.
Nova ferramenta de Uso de GPU
A ferramenta de uso de GPU no Visual Studio 2015 pode ser utilizada para entender o uso de GPU por aplicativos DirectX. Gráficos de tempo de quadro, taxa de quadros e utilização de GPU estarão disponíveis enquanto os aplicativos estiverem sendo executados em tempo real. Além disso, ao coletar e analisar dados detalhados de uso de GPU, essa ferramenta pode ajudar a entender o tempo de execução de CPU e GPU de eventos DirectX individuais, e assim ser útil para determinar se o gargalo de desempenho está na CPU ou no GPU.

C# e Visual Basic

Recursos de linguagem

Nesta versão, vários recursos de linguagem C# e Visual Basic ajudam a reduzir clichês e desordens em códigos rotineiros, estimulam um estilo de programação mais declarativo e aproximam ainda mais as duas linguagens. Existem, por exemplo, aperfeiçoamentos sintáticos para declarações de tipo e de membro e para verificações nulas. Além disso, variáveis locais podem ser declaradas dentro de expressões, e o await pode ser usado em blocos catch e finally. Muitos desses recursos são implementados para apenas umas das duas linguagens nas versões anteriores, mas estarão disponíveis para ambas na versão final de lançamento.
  • Nameof oferece uma forma segura de refatoração para obter o nome de, por exemplo, um parâmetro, membro ou tipo como uma sequência de caracteres.
  • Por meio de operadores nulo-condicional, você pode obter uma verificação de nulos interna enquanto acessa e invoca membros e indexadores.
  • Interpolação de cadeias de caracteres: oferece uma maneira concisa para descrever modelos de sequências de caracteres que inserem expressões em sequências de caracteres de formato (apenas para C# na visualização; VB e C# na RTM).
  • Métodospropriedades apenas de getter, etc. agora podem ter uma única expressão como corpo, exatamente como lambdas.
  • As autopropriedades podem ter inicializadores e não precisam mais de setters.
  • Inicializadores de índice: dentro de um inicializador de objeto, agora, podem inicializar um índice específico do novo objeto. Apenas para C#.
  • Os filtros de exceção permitem que você observe uma exceção e decida se quer capturá-la com determinado bloco catch.
  • Usar cláusulas para classes estáticas levam os membros estáticos diretamente para dentro do escopo, por isso você pode chamar, por exemplo, WriteLine() ou Sqrt() sem prefixação com o nome da classe.
  • await agora funciona em blocos catch e finally, evitando o uso de algumas soluções alternativas bem difíceis.

IU e edição do Editor de códigos

A IU do editor de códigos e as experiências de edição para C# e Visual Basic foram substituídas por nova experiências embutidas no novo .NET Compiler Platform ("Roslyn"). Muitos dos recursos que você já adora foram aperfeiçoados ou renovados.
  • As Lâmpadas são a nova casa para todas as ações rápidas que você adota no Editor do Visual Studio, incluindo correções de problemas comuns de códigos e código de refatoração. Quando o seu código tem problemas, Uma Lâmpada aparece e mostra sugestões de correção. Todas as operações de refatoração foram movidas para a Lâmpada, que você pode acessar a qualquer momento digitando Ctrl + <dot>Lightbulb shows suggestions
  • Existem duas novas operações básicas de refatoração: Variável temporária embutida e Introduzir local. Veja um exemplo do novo recurso Introduzir local:
    Lâmpada: Introduzir local
    E um exemplo da Variável temporária embutida:
    Lâmpada: Variável Temporária
  • O suporte de refatoração para Visual Basic foi incluído pela primeira vez, e também foi movido para a Lâmpada.
  • A renomeação também foi aprimorada; agora ela destaca todas as instâncias do identificador que você deseja renomear, permitido que o novo nome seja digitado todas as instâncias de uma só vez, diretamente no editor.
    Aperfeiçoamentos na renomeação embutida
  • É possível obter análises de código e correções automáticas em tempo real enquanto digita, com orientações específicas sobre código para as plataformas da Microsoft e os pacotes NuGet que você quer atingir. No Preview, será preciso adicionar analisadores FxCop em tempo real por meio de um pacote NuGet obtido na galeria NuGet, como acontece com qualquer outro pacote. À medida que você extrai determinada regra em tempo real, a regra FxCop pós-compilação equivalente é deslocada, para que as ocorrências não sejam duplicadas.
    Eis aqui um exemplo do pacote de Análise de código para Azure.
    Exemplo do pacote de Análise de código para Azure
  • O avaliador de expressão para C# e Visual Basic foi reescrito. Entre os aperfeiçoamentos estão o suporte para expressões LINQ e lambda nas janelas de inspeção e imediato.

F#

Recursos de linguagem e tempo de execução

O F# 4.0 conta com diversas adições de linguagens e tempos de execução novos que preenchem espaços, fazem com que mais coisas "funcionem" e melhoram o desempenho em áreas essenciais. Além disso, diversas falhas e pequenas otimizações de desempenho foram implementadas no compilador e no tempo de execução.
  • Construtores como funções de primeira classe: os nomes das classes agora podem ser usados como valores de função de primeira classe, representando o(s) construtor(es) de tal classe.
  • Unificação do 'mutable' e 'ref' : a sintaxe 'mutable' agora pode ser usada em qualquer lugar, e os valores capturados são convertidos automaticamente para valores 'ref' pelos compilador quando necessário. Um novo aviso opcional foi adicionado para situações em que o desenvolvedor deseje ser notificado quando isso ocorre.
  • Parâmetros estáticos para métodos fornecidos: métodos individuais fornecidos pelos provedores de tipo podem especificar parâmetros estáticos.
  • Tipos fornecidos e não anuláveis: agora, os tipos fornecidos pode ser especificados como não anuláveis com o padrão [<AllowNullLiteral(false)>].
  • Cotação implícita dos argumentos de método: os argumentos de método de tipo Expr<'t> podem agora ser autocotados transparentemente, passando o valor do argumento e AST da expressão que o gerou.
  • Gramática de pré-processador estendida: operadores booliano ||, && e ! podem ser usados, em conjunto com o argumento ( ), em diretivas de pré-processador #if.
  • Exponentes racionais em unidades de medida: unidades de medida agora oferecem suporte para exponentes racionais, que, às vezes, são usados em ciências físicas como engenharia elétrica
  • Uso simplificado dos valores de unidades de medida com funções estilo 'printf': valores numéricos unitizados funcionam perfeitamente com especificadores de formato printf numérico, sem a necessidade de unidades serem removidas.
  • Suporte para matrizes .NET de alta dimensão: matrizes .NET com classificação 5 ou superior agora podem ser consumidas pelo código do F#.
  • Propriedades de extensão em inicializadores de objeto: as propriedades de extensão configuráveis agora podem ser atribuídas a expressões de inicializadores de objetos.
  • Herança de várias instanciações de interface genérica - classes de autoria do F#-podem herdar de classes que implementa instanciações de interface genérica.
  • Várias propriedades 'StructuredFormatDisplayAttribute': formatação %A especificada via [<StructuredFormatDisplay>] agora podem incluir propriedade múltiplas.
  • Namespace de entrelinhamento 'Microsoft' opcional: ao consumir ou abrir módulos e namespaces a partir de FSharp.Core, o entrelinhamento "Microsoft." é opcional.

Tempo de execução do F#:

  • Normalização de módulos de matriz, lista e sequência: o conjunto de funções de processamento de coleções está agora consistente entre os módulos Array, List e Seq (bloqueando APIs não aplicáveis para alguns tipos), com implementações dedicadas e otimizadas para cada tipo.
  • Hash estrutural otimizado: otimizações significativas foram feitas para aprimorar o desempenho da comparação de hash genérica e tipos primitivos, o que gera ganhos de desempenho por APIs, como 'distinct' e 'groupBy'.
  • Operadores de comparação não estrutural otimizados: o módulo FSharp.Core.Operators.NonStructuralComparison agora pode ser aberto, substituindo os operadores de comparação do F# padrão por operadores não estruturais mais eficientes. Isso pode gerar ganhos de desempenho significativos ao processar tipos com implementações de operador personalizadas, principalmente em tipos de valores.
  • Fatiando sintaxe em listas do F#: as listas do F# agora contam com suporte para fatiamento de sintaxe a fim de obter sublistas.
  • Extensões assíncronas para System.Net.WebClient' : as extensões AsyncDownloadFile e AsyncDownloadData do WebClient estão disponíveis.
  • Melhor rastreamento das pilhas assíncronos: exceções que ocorrem em computação assíncrona do F# agora carregam rastreamentos de pilhas mais intuitivos, o que facilita o diagnóstico de problemas.
  • APIs de interop para o Option: várias APIs novas foram adicionadas ao módulo Option para conversão de e para objetos nulos e valores System.Nullable.
  • Padrão de cotação ativo para valores System.Decimal: um padrão ativo foi integrado para corresponder a valores System.Decimal literais e constantes em cotações.

Recursos IDE do F#

Há novas experiências e recursos nas ferramentas do Visual F# combinados a diversas correções de falha.
  • Depuração de script: os scripts do F# agora podem ser depurados diretamente no depurador do Visual Studio.
  • Metadados de assembly nos modelos de projeto: todos os modelos de projeto do F# agora contam com um arquivo AssemblyInfo.fs que contém atributos dos metadados de nível de assembly comuns.
  • Verificação atualizada integrada: os projetos do F# relatam corretamente seus status "atualizado" ao compilar no Visual Studio.
  • Preenchimento IntelliSense nos inicializadores de objeto: as expressões do inicializador de objeto agora oferece suporte para preenchimento IntelliSense das propriedades configuráveis, usando Ctrl+Barra de espaço.
  • Preenchimento IntelliSense dos parâmetros nomeados: chamadas de método e construtores contam com suporte para autopreenchimento IntelliSense dos parâmetros nomeados, usando Ctrl+Barra de espaço.
  • Correções de falhas no suporte de pastas: as ferramentas do Visual F# não suportam diretamente pastas em projetos, mas algumas falhas de sistema dos projetos foram corrigidas, aprimorando o suporte de pastas adicionado pela extensão do Visual F# Power Tools.
Saiba mais sobre o F#.

.NET Framework 4,6

A versão mais recente do .NET Framework é a 4.6. Aqui estão alguns dos novos recursos:

Mudanças na biblioteca de classes base

Incluímos muitos APIs novos para habilitar cenários-chave, particularmente de plataforma cruzada. As seguintes alterações e adições foram incluídas:
  • Novos APIs de criptografia, tais como AsymmetricAlgorithm.KeyExchangeAlgorithm, AsymmetricAlgorithm.SignatureAlgorithm e System.Security.Cryptography.X509Certificates.X509Certificate.
  • As coleções adicionais implementam System.Collections.ObjectModel.ReadOnlyCollection, incluindo System.Collections.Generic.Queue e System.Collections.Generic.Stack.
  • Membros adicionais para suportar o padrão assíncrono baseado em tarefa (TAP), incluindo Task.CompletedTask e NamedPipeClientStream.ConnectAsync.

Suporte para codificações de página de código

O .NET Core suporta, primariamente, codificações Unicode, e por padrão fornece suporte limitado a codificações de página de código. É possível adicionar suporte a codificações de página de código que estejam disponíveis no .NET Framework, mas não sejam suportados no .NET Core, ao registrar codificações de página de código com o método Encoding.RegisterProvider. Para obter mais informações, consulte CodePagesEncodingProvider.

Aperfeiçoamentos no rastreamento de eventos

Um objeto EventSource agora pode ser criado diretamente, e você pode chamar um dos métodos Write() para emitir um evento autodescritivo.

Redimensionamento de controles do Windows Forms

Este recurso foi expandido para incluir os tipos System.Windows.Forms.DomainUpDown, System.Windows.Forms.NumericUpDown, System.Windows.Forms.DataGridViewComboBoxColumn, System.Windows.Forms.DataGridViewColumn e System.Windows.Forms.ToolStripSplitButton.
Esse é um recurso de consentimento. Para habilitá-lo, configure o elemento EnableWindowsFormsHighDpiAutoResizingpara true no arquivo de configuração do aplicativo (app.config).

Compilador JIT de 64 bits para código gerenciado

Este lançamento inclui uma nova versão do Compilador JIT de 64 bits, que oferece aperfeiçoamentos significativos de desempenho sobre o Compilador JIT de 64 bits herdado. Tentamos fazer a transição para o novo compilador a mais transparente possível, mesmo assim, é possível que você veja mudanças no comportamento.

Suporte para converter DateTime para ou de horário Unix

Novos métodos foram adicionados para suportar a conversão entre DateTime e horário Unix. As seguintes APIs foram adicionadas ao DateTimeOffset:
  • static DateTimeOffset FromUnixTimeSeconds(long seconds)
  • static DateTimeOffset FromUnixTimeMilliseconds(long milliseconds)
  • long ToUnixTimeSeconds()
  • long ToUnixTimeMilliseconds()

A associação de modelos ASP.NET suporta métodos de retorno de tarefa

Métodos de associação de modelos ASP.NET que anteriormente eram de retorno de tarefa não eram suportados e geravam uma exceção no tempo de execução, se configurados. Agora, se os aplicativos forem implementados com esses métodos, eles serão executados corretamente. Essa mudança só atinge aplicativos especificamente direcionados para .NET 4.6 ou posterior.

Suporte a canais para instrumentação EventSource gerenciada

Nesta versão, desenvolvedores gerenciados podem reutilizar instrumentação EventSource gerenciada existente para registrar mensagens administrativas ou operacionais significativas no log de eventos, além de quaisquer sessões ETW existentes criadas na máquina. Isso inclui APIs que especificam um canal de destino para métodos de evento de ETW definidos em fontes de evento personalizadas, levam o canal para a conta ao testar se um evento será registrado e suportam registro de manifesto estático de ETW, necessários para suporte de canal.

Aperfeiçoamentos no carregador de assembly

Agora, o carregador de assembly usa a memória de forma mais eficiente ao descarregar assemblies de nível de integridade após uma imagem NGEN correspondente ser carregada. Essa mudança reduz a memória virtual, o que é particularmente benéfico para aplicativos de 32 bits grandes (como o Visual Studio) e também poupa memória física.

Entity Framework

Esta versão inclui uma versão prévia do Entity Framework 7 e uma atualização do Entity Framework 6 que inclui, primariamente, correção de bugs e contribuições da comunidade.

Entity Framework 7

A nova versão do Entity Framework habilita novas plataformas e novos repositórios de dados. Windows Phone, Windows Store, ASP.NET 5 e aplicativos de desktop tradicionais agora podem usar o Entity Framework. Essa versão da plataforma suporta bancos de dados relacionais, bem como repositórios de dados não relacionais como Armazenamento de Tabelas do Azure e Redis. Inclui também uma prévia do tempo de execução do EF7 que está instalado em novos projetos ASP.NET 5. Para obter mais informações sobre o EF7, consulte  What is EF7 all about ("Para que serve o EF7") [conteúdo em inglês].

Entity Framework 6.x

Este lançamento inclui a versão EF6.1.3 do tempo de execução e das ferramentas. O EF6.1.3 inclui correções de falhas e contribuições da comunidade. Você pode ver uma lista das alterações incluídas no EF6.1.3 em nosso site Entity FrameworkCodePlex [conteúdo em inglês]. 
O tempo de execução do Entity Framework 6.1.1 foi incluído em vários locais nesta versão.
  • O tempo de execução será instalado se você criar um novo modelo usando o Entity Framework Tools em um projeto que ainda não tenha o tempo de execução do EF instalado.
  • Dependendo do modelo de projeto selecionado, o tempo de execução estará pré-instalado em novos projetos ASP.NET.
Saiba mais sobre o Entity Framework).

IDE do Visual Studio

Projetos compartilhados

Nesta versão, novos modelos estão disponíveis para criar projetos compartilhados vazios para Visual Basic, C# e JavaScript. Esses projetos compartilhados agora podem ser referenciados por vários tipos de projeto:
  • Qualquer projeto VB/C# sem tipo (ex.: aplicativos de console, bibliotecas de classe, aplicativos Win form)
  • Windows Store 8.1 e Windows Phone 8.1 (VB/C#/JavaScript)
  • Windows Phone Silverlight 8.0/8.1 (VB/C#)
  • WPF e PCL
Você pode adicionar/remover referências de projetos compartilhados por meio do Gerenciador de Referências, na guia Projetos Compartilhados. A referência projeto compartilhado aparece sob o nó Referências no Gerenciador de Soluções, mas o código e os ativos do projeto compartilhado são tratados como se fossem arquivos vinculados ao projeto principal.

Editor de Código (Todas as linguagens)

O suporte a toque agora está disponível no editor do Visual Studio para os seguintes gestos:
  • Rolagem (tocar e arrastar na superfície do editor nas barras de rolagem regular e aprimorada)
  • Zoom por pinçagem
  • Selecione uma linha inteira tocando na margem do editor e selecione palavras tocando duas vezes.
  • Chamar o menu de contexto do editor pressionando e segurando
Estamos cientes de um problema com o gesto de duplo toque, que nem sempre é confiável em níveis menores de zoom. Gostaríamos de receber comentários sobre o novo suporte a toque e, em particular, sobre quaisquer problemas encontrados.

Designer XAML

Clientes do Visual Studio agora serão capazes de editar Modelos e Estilos armazenados em dicionários de recursos externos dentro de seu contexto de uso. Essa experiência foi refinada ainda mais para usar o Peek para permitir uma verdadeira edição de recursos in situ no designer XAML.

Layouts de janela personalizados

Agora, você pode salvar layouts personalizados de janela clicando em Salvar Layout de Janela no menu Janela e aplicar um layout personalizado clicando em Aplicar Layout de Janela no menu Janela. Você também pode aplicar um layout usando os atalhos de teclado predefinidos. Os nove primeiros layouts têm atalhos de teclado de Ctrl+Alt+1 a Ctrl+Alt+9. Outras tarefas que você pode desempenhar incluem deletar, renomear e reordenar  layouts clicando em Gerenciar Layout de Janela no menu Janela.

Suporte ao Editor do JavaScript

Atualizamos o editor do JavaScript para torná-lo ainda mais útil.
  • Navegação. A nova barra de navegação facilita a navegação entre os elementos principais no código-fonte do JavaScript.
  • Comentários em JSDoc. Os comentários da documentação escritos no formato JSDoc são agora exibidos ao usar o IntelliSense. (Para conseguir mais informações sobre os comentários em JSDoc, veja http://usejsdoc.org.)
  • IntelliSense de objeto literal. O editor do JavaScript agora fornece a você sugestões do IntelliSense ao passar um objeto literal para funções documentadas usando JSDoc.
  • Expandir/Recolher. E agora, você pode expandir e recolher mais seções do seu código JavaScript, incluindo comentários multilinhas, matrizes multilinhas e todos os blocos multilinha.
  • Suporte para lista de tarefas. Você pode usar o recurso de lista de tarefas para examinar comentários de tarefa, como // TODO, no seu código JavaScript.
E agora na RC, novos recursos de linguagem JavaScript (da versão ES6 do JavaScript) são suportados, incluindo classes, funções de seta e cadeias de modelo.

Ícones de alta resolução

O Visual Studio suporta ícones em alta resolução em barras de comando, barras de ferramentas em janela (padrão), menus principais, lista de erros, barra de status e alguns tipos de projeto Gerenciador de Soluções quando o dispositivo estiver sendo executado a mais que 100% de ajuste de DPI.

Aprimoramentos na interface do usuário

  • Os menus agora aparecem em estilo Capitalização de Título em vez de ALL CAPS.
  • Os valores de lista suspensa de Configuração e Plataforma para a caixa de diálogo Página de Propriedades de Visual C++ foram alterados para lembrar a última seleção do usuário quando a página de propriedades é fechada e reaberta.

Comentários do Visual Studio

A experiência Enviar um Rosto Triste foi aprimorada com ferramentas melhores para relatar lentidão, travamentos e falhas. Agora é possível anexar arquivos ou etiquetar os comentários para descrever melhor o problema. Além disso, os ícones e itens de menu de Comentários foram atualizados para melhorar a capacidade de descoberta.

Extensibilidade do Visual Studio

  • Agora é possível usar ícones de alta resolução em suas extensões do Visual Studio.
  • Suplementos não são mais suportados nesta versão. Os modelos de projeto de suplementos do Visual Studio e o Gerenciador de Suplementos foram removidos. Você deve converter seus suplementos em extensões VSPackage. Para obter mais informações, consulte Perguntas frequentes: convertendo suplementos em extensões VSPackage.

Blend

Nesta versão, o Blend foi reprojetado, e hoje, mais do que nunca, é a ferramenta preferida para criar belas interfaces de usuário para aplicativos XAML. O Blend está com muito recursos novos, tais como:
  • A nova e elegante aparência, que lembra o Visual Studio, aprimora o fluxo de trabalho entre os dois produtos
  • Um novo tema, exclusivo do Blend, chamado Dark, melhora o contraste entre o seu conteúdo e a interface de usuário da ferramenta
  • IntelliSense XAML
  • Capacidades básicas de depuração
  • Peek em XAML, que permite exibir e editar controles e recursos XAML dentro do contexto em que são usados
  • Uma experiência aprimorada em recarregamento de arquivos para minimizar interrupções no fluxo de trabalho enquanto você desenvolve seus projetos no Blend e no Visual Studio
  • Os layouts de janela personalizados podem ser sincronizados entre máquinas que tenham o Blend instalado
  • Gerenciador de Soluções aperfeiçoado e suporte para controle de fonte
  • Suporte para NuGet
  • Melhor acessibilidade em várias áreas da interface de usuário do Blend, incluindo menus de nível superior, Gerenciador de Soluções e Team Explorer
Saiba mais sobre o Blend.

Depuração e diagnóstico

Edição e continuação gerenciados em anexo

Agora, na RC, você pode editar e continuar depois de anexar a aplicativos .NET e quando a variável de ambientecomplus_forceenc é definida como 1 no processo de destino.

Configuração de ponto de interrupção

A nova janela Configurações de Ponto de Interrupção permite que você especifique condições e ações para os pontos de interrupção. A janela inclui suporte aprimorado do IntelliSense para condições e ações de ponto de interrupção. Você pode usar o desfazer (CTRL+Z) para restaurar pontos de interrupção deletados.

Expressões lambda em janelas de depuração

Agora, você pode usar expressões lambda nas janelas de depuração Inspeção e Imediato, entre outras, em C# e Visual Basic.

PerfTips

É possível usar o recurso PerfTips quanto tempo o código leva para ser executado diretamente no editor quando a execução ultrapassa um limiar especificado.

Uso de GPU

A ferramenta de Uso de GPU pode ser utilizada para entender o uso de GPU por aplicativos DirectX. Gráficos de tempo de quadro, taxa de quadros e utilização de GPU estarão disponíveis enquanto os aplicativos estiverem sendo executados em tempo real. Além disso, ao coletar e analisar dados detalhados de uso de GPU, essa ferramenta pode ajudar a entender o tempo de execução de CPU e GPU de eventos DirectX individuais, e assim ser útil para determinar se o gargalo de desempenho está na CPU ou no GPU.

Aperfeiçoamentos no depurador C++

Quando for parado em pontos de interrupção, o depurador C++ pode executar códigos para calcular resultados, tais como mostrar dados nas janelas Inspeção e Imediato. Se detectar que uma função chamada está em deadlock, o depurador tentará resolver o problema.
Agora, quando um depurador C++ inicia um processo, o Windows aloca memória usando o heap normal em vez do heap normal de depuração. Isso gera um início mais rápido para a depuração. Para conseguir mais informações, veja C++ Debugging Improvements in Visual Studio "2015" ("Aperfeiçoamentos de depuração no Visual Studio 14") [conteúdo em inglês].

Ferramentas de depuração de IU para XAML

Adicionamos duas ferramentas novas: a Live Visual Tree e o Live Property Explorer. Você pode usá-las para inspecionar a árvore visual do aplicativo WPF em execução e as propriedades em qualquer elemento na árvore. Ou seja, essas ferramentas permitem que você selecione qualquer elemento em seu aplicativo em execução e exibem as propriedade renderizadas e computadas finais. Tem mais:
  • Live Visual Tree. Agora, você pode exibir a árvore visual completa de um aplicativo em execução durante a sessão de depuração. A Live Visual Tree aparece quando você pressiona F5 no Visual Studio ou anexa a um aplicativo em execução. Você pode usar a Live Visual Tree para selecionar elementos em um aplicativo em execução para inspeção no Live Property Explorer. A contagem descendente é exibida e, se as informações de fonte estiverem disponíveis, você poderá encontrar instantaneamente o arquivo e o local da definição do elemento.
  • Live Property Explorer. Use esta ferramenta nova para inspecionar o conjunto de propriedades em qualquer elemento que estiver em um aplicativo em execução, agrupado pelo escopo em que foi fora definido. Você pode modificar estas propriedades durante uma sessão de depuração e ver as mudanças imediatamente no aplicativo em execução.
Escolher separadamente como as propriedades substituem umas as outras, e escolher o melhor comportamento podem ser difícil no momento do desenvolvimento. Agora, ao usar nossas novas ferramentas de depuração de IU para XAML, você pode executar essas inspeções no tempo de execução levando tudo em consideração.
(Suporte para aplicativos da Windows Store será lançado no futuro.)
UI Debugging Tools for XAML, full screen 

Configurações de exceção

Você pode definir as configurações de exceção do depurador usando a janela da ferramenta Configurações de Exceção. A nova janela não é modal e conta com desempenho, pesquisa e funcionalidade de filtro melhorados.
Exceptions Settings - Break when Thrown window 

Ferramenta da linha do tempo

Nossa nova ferramenta de linha do tempo proporciona a você uma visualização centralizada no cenário dos recursos que seus aplicativos consomes. Você pode usar isso para inspecionar, diagnosticar e melhorar o desempenho dos seus aplicativos WPF e Windows Store 8.1.
A ferramenta de linha do tempo, que fica no hub Desempenho e Diagnósticos, mostra quanto tempo seu aplicativo gasta na preparação de quadros de IU e em redes de serviço e solicitações de disco. Além disso, ela faz isso no contexto de cenários, como carregamento de aplicativos e de páginas.
The new Timeline tool
Saiba mais sobre a nova ferramenta de linha do tempo no Visual Studio 2015.  (A nova ferramenta de linha do tempo substitui a ferramenta de capacidade de resposta de IU do XAML.)

Ferramentas de diagnósticos

Adicionamos uma nova janela para as ferramentas de diagnóstico que aparece quando você começa a depuração (pressionando F5). A janela das ferramentas de diagnóstico contém os recursos a seguir:
  • Eventos do depurador (com IntelliTrace)
    Os eventos do depurador (com IntelliTrace) oferecem acesso a todos os eventos de interrupção, saída e IntelliTrace coletados durante sua sessão de depuração. Os dados são apresentados na linha do tempo e na exibição em tabela. As duas exibições são sincronizadas e podem interagir entre si.
  • Uso da memória
    A ferramenta de uso da memória permite que você monitore o uso de memória do seu aplicativo enquanto você está depurando. Você também pode tirar e comprar instantâneos da memória nativa e gerenciada para analisar a causa do crescimento e das falhas de memória.
  • Uso da CPU
    A ferramenta de uso da CPU permite que você monitore o uso de CPU do seu aplicativo enquanto você está depurando.
    (Esta ferramenta substitui o PerfTip de tempo da CPU que estava disponível na versão de visualização do Visual Studio 2015.)
Em lançamentos anteriores, a janela das ferramentas de diagnóstico ofereciam suporte para os seguintes tipo de projetos e configurações de depuração:
  • WPF gerenciado, WinForms e projetos do console
  • Win32 nativo, console e projetos MFC
  • ASP.NET 4 usando apenas IIS Express
  • Projetos gerenciados ou nativos da Windows Store sendo executados localmente
    (Projetos da Windows Store que estiverem usando JavaScript ou estiverem em execução em um telefone não compatível)
As melhorias a seguir foram feitas à janela das ferramentas de diagnóstico na versão RC:
  • Ela pode ser movida para qualquer local da janela dentro do Visual Studio e lembra esse local e tamanho entre as sessões de depuração
  • Ela aparece e mostra os dados para um processo único durante a anexação a um processo usando Debug -> Attach ao processo
  • Ela aparece ao depurar projetos ASP.NET em execução no IIS
  • Ela aparece durante a depuração de projetos ASP.NET 5
  • Ela aparece ao depurar um aplicativo em execução em um dispositivo remoto da área de trabalho do Windows
  • Instantâneos da memória podem ser visualizados depois que você interrompe a depuração
  • Eventos do depurador (apenas eventos de interrupção) ficam disponíveis durante a depuração de projetos nativos
Além disso, nesta RC, adicionamos os seguintes recursos novos:
Somente o meu código. Quando você pressiona F5 para iniciar o depurador, ele mostrará apenas seu código, assim, você pode entender os problemas de desempenhos e as exceções sem ruídos da estrutura e outros códigos. Por essa nova funcionalidade de filtragem dos códigos no IntelliTrace suprimir os código de sistema e expor somente o código do usuário, ela facilita a depuração "somente do meu código".
Ferramenta de diagnóstico de rede. Esta nova ferramenta de diagnóstico de rede pode ajudar você a diagnosticar problemas relacionados com a rede ao compilar aplicativos da Windows Store e aplicativos universais executáveis em todos os dispositivos Windows 10, do Windows Phone ao Xbox e Windows Store.
A ferramenta grava informações sobre as operações de rede HTTP dos seus aplicativos, incluindo os cabeçalhos de reposta e solicitação HTTP, cargas de resposta e solicitação, informações detalhadas sobre tempo e cookies, entre outras. A ferramenta de diagnóstico de rede também pode ajudar a responder perguntas sobre cenários comuns, como:
  • Problemas de autenticação (por que você não consegue acessar um recurso, por exemplo) 
  • Problemas de cache (por que você não está conseguindo a versão mais recente de um recurso, por exemplo) 
  • Quantos bytes estão sendo baixados ao executar tarefas comuns dos seus aplicativos 
  • Onde estão os afunilamentos ao acessar e baixar um recurso 
Para acessar a ferramenta de rede, abra a janela das ferramentas de diagnóstico no Visual Studio 2015.  No menu Debug, selecione Start Diagnostic Tools without  Debugging.  Outra opção é pressionar Alt+F2.
Saiba mais sobre a Depuração usando o IntelliTrace.

ASP.NET

Tempo de execução no ASP.NET 5 beta4

Esta versão do Visual Studio suporta criação e desenvolvimento de aplicativos ASP.NET 5 beta4. O ASP.NET 5 beta4 é uma pilha .NET enxuta e combinável para compilar aplicativos web modernos para servidores de nuvem e físicos. Ele contém os seguintes recursos:
  • Novo e leve pipeline de solicitação
  • Executado em IIS ou auto-hospedado em seu próprio processo
  • Desenvolvido em novo Execution Environment (DNX) do .NET que pode ser completamente executado em .NET Framework ou .NET Core. Um novo tempo de execução otimizado para nuvem que oferece suporte para verdadeiro controle de versão lado a lado.
  • Executado em plataformas cruzadas no Windows, Mac e Linux
  • NuGet para tudo, inclusive para o tempo de execução
  • Suporte para ASP.NET MVC 6: uma estrutura Web unificada para IU e APIs da Web
  • Configuração baseada em ambiente para uma transição à nuvem sem percalços
  • Injeção de dependência integrada
  • Novo sistema de projetos do Visual Studio e experiência com ferramentas de alta produtividade
  • Software completamente livre no GitHub pela .NET Foundation
O Visual Studio 2015 de visualização continha pacotes de tempo de execução Beta1 para ASP.NET 5. A RC do Visual Studio 2015 inclui pacotes de tempo de execução Beta4. Você pode encontrar todos os detalhes sobre os novos aperfeiçoamentos e os problemas corrigidos nas notas de versão do GitHub.

Recursos de ferramentas do ASP.NET 5

O Visual Studio 2015 vem com um novo sistema de projetos e experiência de ferramentas integradas para compilação de aplicativos do ASP.NET 5 e para trabalhar com projetos DNX. Alguns dos novos recursos incluem:
  • Novo sistema de projetos para criar projetos de plataforma cruzada com base em DNX que pode ser compilado e executado no Windows, Mac e Linux.
  • Modelos para criar sites e APIs da Web com ASP.NET 5 usando MVC6, Identity 3 e Entity Framework 7.
  • Experiência integrada para encontrar, instalar e restaurar pacotes NuGet.
  • Ferramentas integradas para desenvolvimento Web do lado do cliente usando NPM, Grunt/Gulp e Bower, com integração de gerenciamento de pacotes e o novo Task Runner Explorer.
  • Comandos de nível de projeto DNX executados diretamente pelo Visual Studio com o botão Run do menu suspenso.
  • Pacotes NuGet compilados a partir de um único projeto que se destina várias estruturas, incluindo o .NET Core.
  • IntelliSense combinado ao compilar diversas estruturas de destino a partir de um único projeto.
  • Criação e distribuição de ferramentas da linha de comando de plataforma cruzada via NuGet.

Novos recursos nesta versão

  • Modelos e ferramentas atualizados para compatibilidade com a nova nomenclatura de tempo de execução.
  • Use CTRL + . para encontrar e instalar pacotes NuGet para símbolos não resolvidos em seu código C#.
  • Aninhamento automático de arquivos com base no nome do arquivo (por exemplo, site.min.css ficará aninhado em site.css).
  • Ferramenta .NET Version Manager (DNVM) instalada por padrão.
  • Novos modelos da biblioteca de classes (pacote) e aplicativo do console (pacote).
  • Suporte para habilitar SSL e autenticação do Windows ao hospedar em IIS Express.
  • Criação de perfis de inicialização personalizados que iniciam o IIS Express, incluindo a configuração de variáveis de ambiente personalizadas.
  • APIs adicionadas para estender a experiência do ASP.NET 5 no Visual Studio.

Atualizações de recursos nesta versão

  • A extensão de arquivo para projetos DNX foi mudada de .kproj para .xproj
  • Nomes de destino do MSBuild atualizados com base nos novos nomes de tempo de execução.
  • Modelos da biblioteca de classes e aplicativo de console do ASP.NET 5 removidos e substituídos por mais modelos genéricos novos.
  • Nomes de modelos do ASP.NET atualizados como Empty, Web Site e Web API
  • debugSettings.json renomeado como launchSettings.json e formato simplificado.
  • O arquivo applicationHost.config na pasta .vs agora é usado para configurações específicas de projetos do IIS Express.
  • Melhorias na página de propriedades para selecionar uma versão DNX
  • Diversos aperfeiçoamentos de desempenho para abrir soluções com projetos do ASP.NET 5 e iniciar projetos do ASP.NET 5.
  • Desempenho e estabilidade melhorados na restauração de pacotes NuGet.
Para conseguir detalhes adicionais, veja as notas de versão das ferramentas no GitHub.

Gerenciador de pacotes NuGet

O gerenciador de pacotes NuGet for reescrito como janela de ferramentas e mostra dados separados por projeto e solução. Cada projeto pode abrir uma janela do Gerenciador de Pacotes Nuget ao mesmo tempo. Essa mudança se aplica a todos os projetos que usam o Gerenciador de Pacotes Nuget.

Ferramentas ASP.NET

Aperfeiçoamentos no Editor JSON

Fizemos alguns aperfeiçoamentos no editor JSON, incluindo em termos de desempenho, tais como carregamento assíncrono de esquema JSON, caching de esquemas filhos, e melhor suporte para o IntelliSense. Adicionalmente, os seguintes novos recursos estão disponíveis:
  • Validação de esquema JSON. Adiciona o recurso de validação de esquema JSON, com base no esquema definido na lista suspensa de esquemas.
  • Menu de contexto Desminificar. Você pode clicar com o botão direito no editor JSON e selecionar o menu de contexto Desminificar para desminificar quaisquer matrizes longas no arquivo JSON.
  • Menu de contexto Recarregar Esquemas. O Visual Studio vai fazer o cache do esquema baixado da Internet e vai usar o cache mesmo depois que o Visual Studio for reiniciado. Se souber que o esquema foi alterado, você pode usar o menu de contexto Recarregar Esquemas Ctrl+Shift+J para baixar novamente o esquema em uso no documento JSON ativo e usá-lo imediatamente no documento atual.
  • Intellisense para package.json/bower.json. Além de fornecer IntelliSense e validação para os arquivos package.json e bower.json, o Visual Studio também fornece IntelliSense em tempo real para pacotes Bower e npm diretamente no editor JSON.
  • Duplicar validação de propriedade. Agora, o editor JSON vai fornecer validação para quaisquer propriedades duplicadas. Isso ajuda a resolver um problema comum com a criação de arquivo JSON.

Aperfeiçoamentos no Editor de HTML

O editor de HTML possui IntelliSense atualizado e aperfeiçoado para padrões web e introduziu os seguintes recursos novos:
  • Melhor formação de modelo cliente. O editor de HTML não analisa nem formata mais a sintaxe de aspas inglesas de fechamento duplas {{…}}. Isso é para garantir que o conteúdo dessa sintaxe não seja tratado como HTML e, por isso, seja invalidado, e que não haja uma tentativa de formatar o conteúdo, o que não pode ser feito corretamente usando-se o formatador de HTML. Isso é ótimo para Angular, Handlebars, Mustache e outras sintaxes de aspas inglesas de fechamento duplas.
  • Suporte para elementos personalizados, elementos do Polymer e atributos. O Editor de HTML não valida mais atributos desconhecidos para elementos personalizados, porque estruturas diferentes têm marcas personalizadas demais. Não haverá mais squiggles sob elementos desconhecidos.
  • IntelliSense básico para Componentes Web. O editor de  HTML possui IntelliSense para <link rel="import"></link>, que é parte do padrão Web Components.
  • Ferramentas de elemento HTML. O editor fornece ferramentas para elementos HTML.
  • #region support. O editor de HTML agora suporta dobra de região. Você também pode usar o trecho ao redor para envolver a seleção atual.
  • Suporte a comentários Todo/Hack na Lista de Tarefas.
  • Ícones angulares. As diretivas (ex. <ng-view>) e atributos (por exemplo, ng-controller) são agora exibidos no IntelliSense com um logotipo do Angular para facilitar a identificação.
  • Ícones do Bootstrap. O IntelliSense fornecido em atributos de classe HTML agora é exibido com o logotipo do Bootstrap se o nome de classe for definido pelo arquivo CSS do Bootstrap.

Aperfeiçoamentos no editor CSS/LESS/Sass

  • Suporte a comentários Todo/Hack na Lista de Tarefas.
  • correção do @viewport para o editor do LESS. No editor do LESS, o @viewport não mostra mais avisos de verificação.
  • Muito mais trechos de códigos são oferecidos. O editor CSS/LESS/Sass agora fornece mais trechos de código para facilitar a sua experiência de desenvolvimento.

Link do Navegador

O CSS é sincronizado automaticamente. Os salvar o arquivo CSS ou alterá-lo externamente (usando, por exemplo, um compilador LESS/SASS), este é totalmente recarregado no navegador. Se o arquivo não conseguir sincronizar automaticamente, Ctrl + S  gera um recarregamento automático, o que deve corrigi-lo sem que seja necessário atualizar os navegadores vinculados (Ctrl + Alt + Enter). O recurso pode ser desabilitado na barra de ferramentas.

Ferramentas WebJobs

Agra é possível controlar trabalhos web no nó WebJob do Gerenciador de Servidores dentro de um Site do Azure das seguintes maneiras:
  • Nós WebJobs abaixo dos nós Site no Gerenciador de Servidores.
  • Iniciar/Interromper WebJobs Contínuos no Gerenciador de Servidores.
  • Executar trabalhos sob demanda ou agendados no Gerenciador de Servidores.
  • Exibir painel WebJob no Gerenciador de Servidores.
  • Menu de contexto Exibir Painel: use-o para ir ao painel WebJob de um site do Azure.

WebJobs SDK

O WebJobs SDK está pré-instalado nos modelos de projeto do WebJob do Azure.

Atualizações de tempo de execução do ASP.NET

  • Microsoft ASP.NET e Web ASP.NET MVC 5.2.2

    Os pacotes de modelos foram atualizados para usar ASP.NET MVC 5.2.2. Esta versão não tem recursos novos ou correções de bugs no MVC. Fizemos uma alteração nas Páginas Web e obtivemos uma melhora significativa no desempenho, depois atualizamos todos os outros pacotes que sabemos depender dessa nova versão das Páginas Web.
  • ASP.NET Web API 5.2.2

    Nesta versão, fizemos uma alteração de dependência para Json.Net 6.0.4. Esta versão não tem recursos novos ou correções de bugs no API da Web. Nós atualizamos todos os pacotes que sabemos depender desta nova versão do API da Web.
  • ASP.NET Web API OData 5.3.1 beta

    Consulte What's New in ASP.NET Web API OData 5.3 ("O que há de novo no ASP.NET Web API OData 5.3") [conteúdo em inglês] para saber sobre as versões 5.3 e 5.3.1 beta do API da Web OData.
  • SignalR 2.1.2

    Os pacotes de modelos foram atualizados para usar SignalR 2.1.2. Consulte as notas de versão do SignalR no GitHub [conteúdo em inglês].
  • Pacote Microsoft Owin 3.0

    Os pacotes de modelos foram atualizados para usar pacotes NuGet do Microsoft Owin 3.0. Consulte as notas de versão do Katana 3.0 [conteúdo em inglês].
  • NuGet 2.8.3

    O 2.8.3 agora oferece suporte para o projeto DevExtreme e para o BizTalkProject. Consulte as  notas de versão do NuGet 2.8.3 para informações detalhadas [conteúdo em inglês].
Saiba mais sobre o ASP.NET.

TypeScript

O Visual Studio 2015 também inclui a versão 1.4 das ferramentas TypeScript. Esta versão adiciona tipos de união, proteções de tipo, let/const, cadeias de caracteres de modelo, modo de saída ES6, aliases de tipo e const enums. O TypeScript agora usa o .NET Compiler Platform ("Roslyn"), o poderoso serviço de linguagem por trás do C# e do Visual Basic. O Roslyn traz muitos recursos de edição novos, como Peek, colorização aperfeiçoada, renomeação mais precisa e melhor suporte para programação funcional.
Saiba mais sobre as ferramentas TypeScript [conteúdo em inglês].

IntelliTest

No Visual Studio 2015, adicionamos o IntelliTest, que explora seu código .NET para gerar dados de teste e um pacote de testes de unidade. Para cada instrução no código, uma entrada de teste é gerada para executar essa instrução. Uma análise de caso é realizada para cada ramificação condicional do código. Por exemplo: if instruções, asserções e todas as operações que conseguem gerar exceções são analisadas. Essa análise é usada para gerar dados de teste para um teste de unidade parametrizado de todos os métodos, criando testes de unidade com o máximo de cobertura de código. Então você traz o seu conhecimento do domínio para aprimorar esses testes de unidade.
Além disso, adicionamos a seguinte funcionalidade ao IntelliTest:
  • Testes da unidade parametrizados. O IntelliTest habilita suporte para uma API que você pode usar para guiar geração de teste de dados, especificar propriedades de correção do código em teste e direcionar a exploração do código em teste. Esta API fica disponível no namespace Microsoft.Pex.Framework e pode ser usada nos métodos de teste (testes de unidades parametrizados, métodos de fábrica) gerados pelo IntelliTest. Com consequência, o comando do menu de contexto "IntelliTest" agora também está disponível pelos métodos de teste gerados.
  • Criação de stubs de teste. Agora, o "Criar Testes Unitários" está disponível no menu de contexto como um comando que fornece a possibilidade de criar e configurar um projeto de teste, uma classe de teste e um stub de teste.
Saiba mais sobre o IntelliTest (antes conhecido como "Testes de Unidade Inteligentes").

Application Insights

Com o Visual Studio, é fácil adicionar o Application Insights a seu projeto. Com o Visual Studio 2015, as Ferramentas do Application Insights para Visual Studio trazem mais aperfeiçoamentos em desempenho e correções de bugs.
O Visual Studio 2015 é compatível somente com Application Insights Tools 2.0 ou versões mais recentes. Ele não oferece suporte para o Application Insights Tools 1.3.2 ou versões anteriores.
A atualização do Visual Studio 2015 inclui:
  • Integração direta com o fluxo de trabalho para publicar em um site do Azure
  • Integração de soluções e detecção de projeto aperfeiçoadas. (Por exemplo, o Application Insights não é mais incluído em projetos não suportados como o Python.)
  • Integração completa com o novo gerenciador de contas do Visual Studio, em que um usuário pode iniciar sessão em várias contas simultaneamente.

Gerenciamento de Versões

Com este recurso, você pode melhorar o processo de gerenciamento da versão do seu aplicativo, implantar seu aplicativo em um ambiente específico para cada estágio separado e gerenciar as etapas no processo com aprovações para cada etapa. E ao usar o serviço de gerenciamento de versão para Visual Studio Online, você também pode definir um pipeline de inicialização do check-in à implantação sem ter que instalar e manter um servidor de gerenciamento de versão local.
Uma versão atualizada do gerenciamento de versão está disponível para Visual Studio 2015. Ela é bem parecida com o gerenciamento de versão para Visual Studio 2013 existente, mas fornece desempenho melhorado nas seguintes áreas:
  • A página de inicialização cliente do gerenciamento de versão, que mostra uma visão geral do processo de versão e as notificações.
  • Renderização e interatividade em outras páginas clientes do gerenciamento de versão, por meio de cache adicional.
  • Sincronização dos grupos de segurança do Active Directory e TFS.
  • Criação de novas versões.
Saiba mais sobre o gerenciamento de versão.

Controle de versão do Git

è mais fácil trabalhar com ramificações e ver como as mudanças em seu histórico divergiram.

Ramificações

Você pode organizar suas ramificações hierarquicamente, especificando um prefixo:
Ramificações locais e remotas (incluindo aquelas que você não criou localmente) são mostradas separadamente em um modo de exibição de árvore.
Ramificações Git
Outra novidade da RC é que retrabalhamos a página de ramificações:
  • Agora, você pode mesclar de ramificações remotas e locais.
  • A ramificação com que você está mesclando agora é fixada à ramificação que já está pronta.
  • Você pode troca base com a ramificação atual em qualquer ramificação local ou remota.
  • Você pode finalizar uma ramificação remota ao clicar nela duas vezes ou clicar nela com o botão direito e, depois, escolher Check-out.

Gerenciamento de elementos remotos

Agora, você pode configurar seus elementos remotos de Git no Team Explorer. Nas configurações de repositória, há uma nova seção Elementos Remotos que mostra os elementos remotos configurados no momento, e você pode adicioná-los, editá-los ou removê-los. Por exemplo, se precisar mudar a URL do elemento remoto de origem, você poderá clicar em Editar e alterar URL de busca e/ou push.

Histórico detalhado

Agora você pode ver como as confirmações divergiram no histórico.
Exibição detalhada do histórico
No gráfico, as confirmações de mesclagem aparecem em cinza e as confirmações sem mesclagem aparecem em uma cor mais brilhante. Você pode alternar entre os modos de exibição simples e detalhado. Se o gráfico estiver truncado, você pode redimensioná-lo.
Também fizemos diversas atualizações ao histograma nessa RC:
  • Adicionamos uma barra de ferramentas que permite controlar o nível de talhes que você vê em um gráfico.
  • Agora, destacamos as linhas do histórico para indicar quais confirmações são possíveis a partir da confirmação selecionada no momento.
  • Exibimos as duas linhas do histórico se as ramificações local e remota forem diferentes. Isso é bem útil depois de trocar base em uma ramificação local.

Troca de base no Team Explorer

Agora, oferecemos suporte para troca de base no Team Explorer. Para iniciá-la, clique no submenu para trocar base na página Ramificações, ou clique com o botão direito em uma ramificação e selecione, "Trocar Base para..."

Repositórios VSO

Aprimoramos a experiência de "introdução" ao criar um repositório VSO, e há muito mais mudanças chegando para simplificar a criação de um novo repositório. No momento, nessa RC, fizemos algumas pequenas alterações para facilitar a adição de novos códigos a um repositório existente: Se você se conectar a qualquer repositório usando o Team Explorer e, em seguida, escolher Arquivo | Novo Projeto, a caixa de diálogo abrirá na raiz do repositório com o qual você acabou de se conectar.

Logon único

Como é praticados por muitos desenvolvedores hoje em dia, você pode aproveitar diversos serviços na nuvem quando está desenvolvendo seus aplicativos. Por exemplo, você provavelmente adicionou um back-end ao seus aplicativos para armazenar dados, armazenou seu código-fonte na nuvem ou publicou um aplicativo em alguma loja.
Antes, cada um desses serviços precisava de um processo de logon a parte, e cada serviço gerenciava separadamente o estado do usuário conectado.
Com esta versão, reduzimos os avisos de autenticação necessários para acessar muitos serviços integrados da nuvem no Visual Studio. Agora, quando você se autentica no primeiro serviço da nuvem no Visual Studio, faremos seu logon automaticamente ou reduziremos os avisos de autenticação para outros serviços integrados da nuvem.

CodeLens

Saiba mais sobre o seu código enquanto se mantém focado em seu trabalho no editor. Localize referências de código, mudanças em seu código, itens TFS relacionados e testes de unidade – tudo isso sem tirar os olhos do código.
Procure por padrões nas mudanças ocorridas no código para avaliar o impacto. O CodeLens agora mostra o histórico de mudanças como gráfico para código no Git.
View your team's code changes with CodeLens 
Você também pode ver o histórico dos seus arquivos com versão nos repositório Git se usar os indicadores de nível de arquivo do CodeLens. E quando você estiver trabalhando com um controle de fonte no Git e itens de trabalho no TFS, também poderá conseguir informações sobre os itens de trabalho associados a estes arquivos ao usar esses indicadores.
CodeLens file level team indicators 
E, agora, vamos ver as novidades da RC: Indicadores Combined authors When last changed do CodeLens. O indicador de autores do CodeLens para o controle de versão do Team Foundation agora exibe há quanto tempo a última alteração foi feita.
Saiba mais sobre o CodeLens.

Arquitetura, design e modelagem

Mapas de código e gráficos de dependência

Quando você quer entender dependências específicas no código, exiba-os criando mapas de código. Você pode, então, navegar entre essas relações usando o mapa que aparece ao lado do código.
Os mapas de código também pode ajudar você a saber em que parte do código está enquanto trabalha, por isso, você lerá menos códigos enquanto examina o design do código.
Com essa versão, é possível:
  • Ignorar a recompilação de sua solução para melhor desempenho na criação e edição de diagramas.
  • Consiga mapas de código reativos mais rápido: Arrastar e soltar operações produz um resultado imediato, e os links entre os nós são criados com muito mais rapidez, sem afetar as operações posteriores iniciadas pelo usuário, como expandir um nó ou solicitar mais nós. Quando você cria mapas de código sem compilar a solução, todos os casos de canto, como quando os assemblies não são compilados, são agora compilados.
  • Criar diagramas por meio do Modo de Exibição de Classe e do Pesquisador de Objetos.
  • Filtre relações para tornar os diagramas mais fáceis de ler. Agora, a filtragem de links também aplica-se a links de grupos cruzados, o que torna o trabalho com a janela de filtros menos intrusivo que do que era nas versões anteriores.
  • Organize rapidamente seus mapas de código ao filtrar com nós e grupos. Você pode exibir ou ocultar elementos de código em um mapa com base em sua categoria, ou elementos de código do grupo por pastas de solução, assemblies, namespaces, pastas de projeto e tipos.
Outros aprimoramentos incluem:
  • Links de dependência. Os links de dependência não mais representam a herança de System.Object, System.ValueType, System.Enum e System.Delegate, o que facilita ver dependências externas no mapa de códigos.
  • Diagramas de cima para baixo melhorados. Para soluções médias ou maiores do Visual Studio, você pode usar um menu de arquitetura simplificado para conseguir um mapa de códigos mais eficiente para sua solução. Os assemblies da sua solução são agrupados ao lado das pastas de solução para que você possa vê-los em contexto e aproveitar o esforço feito para estruturar a solução. Você verá imediatamente referências de projeto e assembly, e, em seguida, aparece os tipos de link. Além disso, os assemblies que estiverem externos à solução são agrupados de uma maneira mais compacta.
Observação: Não é mais possível usar o Architecture Explorer para criar esses diagramas. Mas ainda é possível usar o Gerenciador de Soluções.
E, agora, vamos ver as novidades da RC:
  • 'drill-in into dependency links' leva os filtros em consideração. Agora, você obtém um diagrama simples e útil quando solicita a compreensão de contribuições para um link de dependência no mapa de códigos. Este diagrama é menos desorganizado e também leva em consideração as opções de filtragem de link.
  • Elementos de código são adicionados a um mapa de código com seus contexto. Como os diagramas agora aparecem com contexto (até assembly e pasta de solução), que pode ser filtrado, você pode conseguir diagramas mais eficientes ao arrastar e soltar elementos de código pelo gerenciador de soluções, visualização de classes, navegador de objetos ou ao solicitar a exibição no mapa de códigos.
  • Os projetos de teste têm estilo diferente e podem ser filtrados. Agora, você pode identificar os projetos de teste em um mapa de códigos para a solução, pois eles têm estilos diferentes. Eles também pode ser filtrados para que você possa se concentrar no código do produto com mais facilidade.
Saiba mais sobre os mapas de código.

Diagramas de camada

Atualize esses diagramas por meio do Modo de Exibição de Classe e do Pesquisador de Objetos. Para atender aos requisitos de design de software, use diagramas de camada para descrever as dependências desejadas para seu software. Mantenha o código consistente com o design encontrando um código que não atende a essas restrições e validando códigos futuros com essa linha de base.

Diagramas UML

Não é mais possível criar diagramas de classe UML e diagramas de sequência a partir do código. Ainda é possível, porém, criar os diagramas usando novos elementos UML.

Serviço de linguagem XAML

Redesenvolvemos o serviço de linguagem XAML no .NET Compiler Platform ("Roslyn") para fornecer uma experiência de edição em XAML rápida, confiável e moderna que inclui o IntelliSense.
Isso torna a experiência de autoria no XAML igual a outras linguagens de primeira classe no Visual Studio. Também poderemos fornecer configurações de recurso eficientes em refatoração de linguagem cruzada com muito mais rapidez.

Diversos

Teste de carga com base na nuvem dos datacenters mundiais do Azure

Configurar a infraestrutura requer a execução de testes de carga com o uso do Visual Studio Team Foundation Service acaba de ficar mais fácil: Agora, você pode executar testes de carga com base na nuvem a partir de qualquer datacenter do Azure compatível no mundo inteiro.

Agents para Visual Studio 2015 não precisa mais de Test Controller

No Agents para Visual Studio 2015, você não precisa de um controlador de teste à parte, pois o próprio programa pode manipular a orquestração na comunicação com o TFS 2015 ou Visual Studio Online.
Em todos os novos cenários do Visual Studio 2015 e TFS 2015, recomendamos que você use o Agents para Visual Studio 2015.
No entanto, se você precisa que o Test Agent ou Test Controller funcionem com TFS 2013, recomendamos utilizar o Agents para Visual Studio 2013 atualização 5 e configurar o Test Controller.
(O Test Controller é compatível com TFS 2015 e TFS 2013. Porém, o suporte para  Load Testing no Visual Studio 2015 não faz parte do Agents, portanto recomendamos que você instale o Agents para Visual Studio 2013 atualização 5 e configure o Test Controller.)

Serviços conectados

A nova caixa de diálogo Adicionar Serviço Conectado no Visual Studio 2015 permite que você crie facilmente seu aplicativo para Azure Application InsightsAzure StorageAzure Mobile ServicesOffice 365Salesforce. Para adicionar um serviço conectado, clique com o botão direito no nó Referências e selecione Adicionar Serviço Conectado....
Add a Connected Service 
A caixa de diálogo Adicionar Serviço Conectado contém todos os provedores de serviço conectado que estão instalados no momento e fornece maneiras de conseguir mais informações sobre o provedor, as tecnologias usadas por ele e se ele é compatível com o projeto. Outros provedores podem ser descobertos na galeria Extensões a Atualizações ao usar o linkLocalizar mais serviços... . A caixa de diálogo Adicionar Serviço Conectado também é expansível. Se você é um desenvolvedor de serviços, pode usar nosso SDK de Serviços Conectados para compilar um provedor que possa melhorar o DREAD e uso da unidade dos seus serviços.

Logon único corporativo

Uma tarefa comum para os aplicativos empresariais é configurar o aplicativo para logon único corporativo usando o Azure Active Directory. Agora, você pode fazer isso facilmente, a qualquer momento, durante a construção do aplicativo ao clicar com o botão direito no aplicativo e selecionar Configurar Autenticação AD do Azure.... Isso abre um assistente parecido com a experiência do Adicionar Serviço Conectado para guiar você pelo processo de configuração do seu aplicativo funcionar com Active Directory. Especificar domínio do Active Directory no assistente registra seu aplicativo no Active Directory e configura-o para solicitar logon.
Specify an Active Directory Domain in the wizard 

IIS 10 Express para RC do Visual Studio 2015

Novidades nessa RC: Esta versão inclui uma nova versão do IIS 10 Express. A nova funcionalidade inclui suporte para HTTP 2.0 e sincronização de bits com Windows 10.

Outras mudanças: Correções de falhas & Problemas conhecidos

Para ver a descrição completa das melhorias na tecnologia, correções de bugs e problemas conhecidos desta versão, veja o seguinte artigo da base de dado.

Share on Google Plus

About Anônimo

Analista de Sistemas Há 2 Anos
    Blogger Comment
    Facebook Comment

0 comentários:

Postar um comentário