Baixe o app para aproveitar ainda mais
Prévia do material em texto
2 Visual Studio 2017 sucintamente De Alessandro Del Sole Prefácio de Daniel Jebaraj 3 Copyright © 2017 pela Syncfusion, Inc. 2501 Parkway Center Aérea Suíte 200 Morrisville, NC 27560 EUA Todos os direitos reservados. informações importantes sobre licenciamento. Por favor leia. Este livro está disponível para download gratuito em www.syncfusion.com na conclusão de um formulário de inscrição. Este livro está disponível para download gratuito em www.syncfusion.com na conclusão de um formulário de inscrição. Este livro está disponível para download gratuito em www.syncfusion.com na conclusão de um formulário de inscrição. Se você obteve este livro de qualquer outra fonte, registre e baixe uma cópia gratuita de www.syncfusion.com . www.syncfusion.com . Este livro está licenciado para leitura somente se obtido de www.syncfusion.com . Este livro está licenciado para leitura somente se obtido de www.syncfusion.com . Este livro está licenciado para leitura somente se obtido de www.syncfusion.com . Este livro é licenciado estritamente para uso pessoal ou educacional. A redistribuição de qualquer forma é proibida. Os autores e detentores de direitos autorais não fornecem absolutamente nenhuma garantia para qualquer informação fornecida. Os autores e detentores de direitos autorais não serão responsáveis por qualquer reclamação, danos ou qualquer outra de, fora ou em conexão com as informações contidas neste livro. Por favor, não use este livro se os termos listados forem inaceitáveis. Uso constituirá aceitação dos termos listados. SYNCFUSION, SUCINTAMENTE, ENTREGAM INOVAÇÃO COM ESSENCIAIS EASE, ESSENCIAL E .NET. marcas registradas da Syncfusion, Inc. Revisor Técnico: James McCaffrey Revisor Técnico: James McCaffrey Editor de cópia: John Elderkin Editor de cópia: John Elderkin Coordenador de Aquisições: Tres Watkins, gerente de desenvolvimento de conteúdo da Syncfusion, Inc. Coordenador de Aquisições: Tres Watkins, gerente de desenvolvimento de conteúdo da Syncfusion, Inc. Revisor: Graham High, produtor sênior de conteúdo, Syncfusion, Inc. Revisor: Graham High, produtor sênior de conteúdo, Syncfusion, Inc. Revisor: Graham High, produtor sênior de conteúdo, Syncfusion, Inc. Eu http://www.syncfusion.com/ http://www.syncfusion.com/ http://www.syncfusion.com/ 4 Índice A história por trás da sucinta série de livros .......................................... ......................................... 8 Sobre o autor ............................................... .................................................. ...................................... 10 Introdução ................................................. .................................................. ............................................ 11 Capítulo 1 Uma nova experiência de instalação ............................................ .................................................. 12 Resolvendo a complexidade da instalação do Visual Studio .......................................... ............................... 12 Instalando o Visual Studio 2017 .............................................. .................................................. .................. 12 Personalizando a instalação com componentes individuais ............................................ ........................... 15 Instalando várias edições ............................................... .................................................. ..................... 17 Modificando a instalação do Visual Studio 2017 ............................................ ............................................ 17 Lançamento do Visual Studio 2017 .............................................. .................................................. ............... 17 Resumo do capítulo ................................................ .................................................. ................................ 17 Capítulo 2 A Página Inicial Revisitada ............................................ .................................................. ......... 18 Experiência de início otimizada ............................................... .................................................. ................... 18 Mantendo-se atualizado: Anúncios e novidades .......................................... ........................................... 19 Atalhos para soluções, projetos e pastas .......................................... ............................................... 20 Trabalhando com os projetos usados mais recentemente ............................................ ............................................... 20 Acessando modelos de projeto ............................................... .................................................. ................ 21 Abrindo projetos, pastas e repositórios do controle de origem ........................................ .................... 21 Resumo do capítulo ................................................ .................................................. ................................ 21 Capítulo 3 Melhorias no Editor de Código ............................................. .................................................. .... 22 Melhorias do IntelliSense ................................................ .................................................. ................... 22 Navegação de código facilitada .............................................. .................................................. ................ 23 Encontre todas as referências ............................................... .................................................. ............................. 24 Navegando pelo código com Go To ............................................. .................................................. .................... 26 5 Linhas de guia de estrutura ............................................... .................................................. ........................... 27 Análise de código Roslyn ............................................... .................................................. ............................ 28 Mais refatorações Roslyn ............................................... .................................................. .................... 28 Controlando análise ao vivo com estilo de código ............................................ .................................................. 32 Melhorias de edição para C ++ e F # ............................................ .................................................. ..... 47 Resumo do capítulo ................................................ .................................................. ................................ 47 Capítulo 4 Melhorias XAML .............................................. .................................................. ................ 48 XAML Edit and Continue .............................................. .................................................. ........................ 48 Melhorias no editor de código XAML .............................................. .................................................. ........... 49 Navegando pelo código com Go To ............................................. .................................................. .................. 50 Filtragem do IntelliSense ................................................ .................................................. ............................ 50 Refatorando namespaces ................................................ .................................................. ................... 50 Diagnóstico XAML ................................................ .................................................. ................................ 53 Resumo do capítulo ................................................ .................................................. ................................ 55 Capítulo5 Trabalhando com Soluções, Pastas e Idiomas ........................................ ...................... 56 Carga leve de solução ............................................... .................................................. ..................... 56 Suporte estendido a idiomas ............................................... .................................................. .................. 57 Abrir Pasta: Trabalhando com qualquer base de código ........................................... .................................................. 58 Configurando a demonstração .............................................. .................................................. ............................. 58 Suporte a idiomas básicos no Visual Studio 2017 ........................................... ......................................... 59 Suporte extensivo a idiomas através de cargas de trabalho e ferramentas ........................................... ....................... 61 O que há de novo para controle de origem e projetos de equipe .......................................... ........................................ 71 Resumo do capítulo ................................................ .................................................. ................................ 74 Capítulo 6 Extensões e Extensibilidade ............................................. .................................................. .. 75 O que há de novo com as extensões no Visual Studio 2017 .......................................... ...................................... 75 Gerenciador de extensão de roaming ............................................... .................................................. ............. 75 Agendamento de operações sobre extensões .............................................. ................................................. 76 6 O que há de novo na extensibilidade .............................................. .................................................. ................. 78 Criando uma extensão em branco para fins de demonstração ........................................... ........................................ 78 Especificando os pré-requisitos de extensão ............................................... .................................................. ..... 79 Suporte Ngen e instalação de arquivos personalizados ............................................ ................................................ 81 Resumo do capítulo ................................................ .................................................. ................................ 82 Capítulo 7 Depuração e Teste de Melhorias ............................................ .................................... 83 Apresentando Run to Click .............................................. .................................................. ......................... 83 Janelas de diagnóstico atualizadas ............................................... .................................................. ................ 84 Analisando exceções com o Exception Helper ............................................ ....................................... 86 Apresentando o Live Unit Testing .............................................. .................................................. ................. 88 Melhorias diversas ................................................ .................................................. ................ 92 Melhorias na acessibilidade ................................................ .................................................. ................ 93 Eventos do IntelliTrace para .NET Core ............................................ .................................................. .......... 93 Atualizações de ferramentas de perfil ............................................... .................................................. ........................ 93 Suporte para o Chrome com JavaScript ............................................. .................................................. ..... 93 Resumo do capítulo ................................................ .................................................. ................................ 93 Capítulo 8 Visual Studio 2017 para Desenvolvimento Móvel .......................................... .............................. 94 Visual Studio 2017 e a Plataforma Universal do Windows .......................................... ............................ 94 Atualizações do .NET Native ............................................. .................................................. ........................ 95 Pacotes atualizados do NuGet ............................................... .................................................. .................. 96 Melhorias XAML para UWP .............................................. .................................................. ............. 96 Designer de Manifesto Atualizado ............................................... .................................................. ................ 97 Ferramenta de análise de interface do usuário ............................................... .................................................. ................................. 100 Desenvolvimento multiplataforma com o Apache Cordova ........................................... ................................. 102 Versões e plataformas suportadas .............................................. .................................................. ..... 103 Simulação no navegador com o Cordova Simulate ........................................... ........................................ 103 Colorização de mensagens ................................................ .................................................. ....................... 105 7 Aquisição de ferramentas de desenvolvimento no produto ........................................... ........................................... 105 Desenvolvimento multiplataforma com Xamarin ............................................ .............................................. 106 Correção automática de dependências Android ausentes ............................................ ................................... 106 Atualizações para modelos de projeto .............................................. .................................................. ............. 107 Editor unificado .plist para iOS ............................................ .................................................. ................... 109 Resumo do capítulo ................................................ .................................................. .............................. 111 Capítulo 9 Visual Studio 2017 para Cloud e Desenvolvimento Web ........................................ ............... 112 Criando aplicativos de plataforma cruzada com o .NET Core 1.1 ........................................ ........................................ 112 Apresentando ferramentas para contêineres Docker ............................................. .................................................. 117 Configurando o ambiente de desenvolvimento ............................................. ............................................. 117 Ativando o Docker em projetos .NET ............................................ .................................................. ....... 119 Executando um contêiner do Docker no Azure ............................................ .................................................. 120 Apresentando os recursos de serviço ............................................... .................................................. ......... 125 Construindo aplicativos Node.js ............................................. .................................................. ................ 129 Ferramentas atualizadas para o Microsoft Azure ............................................................................................... ........ 133 Atualizações do Cloud Explorer ............................................... .................................................. .................... 134 Resumo do capítulo ................................................ .................................................. .............................. 136 8 A história por trás do Sucintamente Series A história por trás do Sucintamente Series A história por trás do Sucintamente Series de livros Daniel Jebaraj, vice-presidente Syncfusion, Inc. Taying na vanguarda Como muitos de vocês podem saber, a Syncfusion é um provedor de componentes de software para a plataforma Microsoft. Isso nos coloca na empolgante mas desafiadora posição de sempre estar na vanguarda. Sempre que plataformas ou ferramentas estão sendo enviadas para fora da Microsoft, o que parece ser uma questão de praticamente qualquer outra semana, temos que nos instruir rapidamente. A informação é abundante, mas mais difícil de digerir Na verdade, isso se traduz em muitos pedidos de livros, pesquisas em blogs e scans no Twitter. Enquanto mais informações estão se tornando disponíveis na Internet e mais e mais livros estão sendo publicados, mesmo em tópicos que são relativamente novos, um aspecto que continua a nos inibir é a incapacidade de encontrar livros de visão geral de tecnologia concisos. Geralmente nos deparamos com duas opções: ler mais de 500 livros de páginas ou vasculhar a web em busca de posts relevantes e outros artigos. Assim como todo mundo que tem um trabalho a fazer e clientes para servir, achamos isso bastante frustrante. o Sucintamente Series o Sucintamente Series o Sucintamente Series Essa frustração se traduziu em um profundo desejo de produzir uma série de livros técnicos concisos que seriam direcionados a desenvolvedores trabalhando na plataforma Microsoft. Acreditamos firmemente, dado o conhecimento prévio que tais desenvolvedores têm, que a maioria dos tópicos pode ser traduzida em livros com entre 50 e 100 páginas. Isso é exatamente o que resolvemos realizar com o Sucintamente Series. Não é tudo maravilhoso nascido de um Isso é exatamente o que resolvemos realizar com o Sucintamente Series. Não é tudo maravilhoso nascido de um Isso é exatamente o que resolvemos realizar com o Sucintamente Series. Não é tudo maravilhoso nascido de um profundo desejo de mudar as coisas para melhor? Os melhores autores, o melhor conteúdo Cada autor foi cuidadosamente escolhido de um grupo de especialistas talentosos que compartilhavam nossa visão. O livro que você tem agora em mãos e os outros disponíveis nesta série são resultado do trabalho incansável dos autores. Você encontrará conteúdo original garantido para colocá-lo em prática no tempo necessário para tomar algumas xícaras de café. original garantido para colocá-lo em prática no tempo necessário para tomar algumas xícaras de café. S 9 Grátis para sempre Syncfusion estará trabalhando para produzir livros sobre vários tópicos. Os livros serão sempre gratuitos. Quaisquer atualizações que publicarmos também serão gratuitas. Livre? Qual é o problema? Não há captura aqui. A Syncfusion tem um interesse especial nesse esforço. Como fornecedor de componentes, nossa reivindicação única sempre foi a de oferecer estruturas mais amplas e abrangentes do que qualquer outra no mercado. A educação do desenvolvedor nos ajuda muito a comercializar e vender contra fornecedores concorrentes que prometem “ativar o suporte AJAX com um clique” ou “transformar a lua em queijo!” Deixe-nos saber o que você pensa Se você tiver algum tópico de interesse, pensamentos ou comentários, sinta-se à vontade para enviá-los para nós em succinctly-series@syncfusion.com . succinctly-series@syncfusion.com . Esperamos sinceramente que você goste de ler este livro e que o ajude a entender melhor o tópico do estudo. Obrigado por ler. Por favor, siga-nos no Twitter e "Curtir" nos no Facebook para nos ajudar a espalhar o palavra sobre o Sucintamente Series! palavra sobre o Sucintamente Series! palavra sobre o Sucintamente Series! mailto:succinctly-series@syncfusion.com https://twitter.com/Syncfusion https://www.facebook.com/Syncfusion 10 Sobre o autor Alessandro Del Sole é MVP (Most Valuable Professional) da Microsoft desde 2008. Premiado como MVP do ano em 2009, 2010, 2011, 2012 e 2014, é reconhecido internacionalmente como especialista em Visual Studio e autoridade em Visual Basic e .NET. . Alessandro é autor de muitos livros e e-books sobre programação com o Visual Studio, incluindo Código do Basic e .NET. . Alessandro é autor de muitos livros e e-books sobre programação com o Visual Studio, incluindo Código do Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed.Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed.Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed.Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed.Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed.Visual Studio Sucintamente , Visual Basic 2015 lançado, Roslyn sucintamente e Visual Basic 2012 Unleashed. Ele escreveu vários artigos técnicos sobre .NET, Visual Studio e outras tecnologias da Microsoft em italiano e inglês para muitos portais de desenvolvedores, incluindo a MSDN Magazine e o Visual Basic Developer Center da Microsoft. Ele é um orador frequente em conferências italianas e lançou vários aplicativos da Windows Store. Ele também produziu vários vídeos instrutivos em inglês e italiano. Alessandro trabalha como desenvolvedor sênior de .NET, instrutor e consultor. Você pode segui-lo no Twitter em @progalex . instrutor e consultor. Você pode segui-lo no Twitter em @progalex . instrutor e consultor. Você pode segui-lo no Twitter em @progalex . https://www.syncfusion.com/resources/techportal/details/ebooks/Visual_Studio_Code_Succinctly https://www.syncfusion.com/resources/techportal/details/ebooks/Visual_Studio_Code_Succinctly https://www.syncfusion.com/resources/techportal/details/ebooks/roslyn http://twitter.com/progalex 11 Introdução “Qualquer desenvolvedor, qualquer plataforma, qualquer dispositivo.” Se você participou (pessoalmente ou on-line) de uma conferência recente da Microsoft, como // Build 2016, Ignite ou Connect (); 2016, estas palavras não soarão novas. Eles representam a visão e a ambição por trás do lançamento do Microsoft Visual Studio 2017 como a ferramenta de desenvolvimento que suporta as estratégias mais recentes da Microsoft. Até alguns anos atrás, o Microsoft Visual Studio era o ambiente de desenvolvimento escolhido se você quisesse criar aplicativos da Web e do Windows com base no .NET Framework com C #, F #, Visual Basic e C ++. Se você quisesse (ou precisasse) construir aplicativos para diferentes sistemas operacionais, plataformas ou dispositivos que não fossem um PC, você teria que usar ferramentas de desenvolvimento proprietárias e estruturas nativas em plataformas específicas. Nos últimos anos, a Microsoft mudou significativamente sua estratégia, abrindo-se para outras plataformas, adotando o código aberto e se concentrando ainda mais em serviços de nuvem. Na verdade, a empresa tem feito investimentos significativos para trazer tecnologias, plataformas, ferramentas de desenvolvimento, estruturas e serviços para outros sistemas operacionais, como Linux e Mac OS, e para públicos normalmente não-Microsoft (e às vezes hostis), concentrando-se em serviços. muito mais do que no passado. Nessa estratégia, o .NET Core, o tempo de execução de software de código aberto e plataforma aberta, permite que os desenvolvedores de C # escrevam aplicativos executados no Windows, Linux e Mac. Com o Xamarin,você pode escrever aplicativos móveis executados em Android, iOS e Windows com uma única base de código C # compartilhada. O SQL Server 2016 agora tem uma prévia que é executada no Linux - um marco revolucionário para a Microsoft. Uma prévia do Visual Studio para Mac está atualmente disponível e permite que desenvolvedores C # gravem aplicativos de plataforma cruzada com o .NET Core e o Xamarin no Mac OS. Nesta visão entre plataformas e dispositivos diferentes, a nuvem é ainda mais importante. Na verdade, o Azure hospeda todos os serviços novos e existentes que a Microsoft está oferecendo e cresce de acordo com o que o mercado exige, por exemplo, hospedando contêineres do Docker no Linux. Sendo o principal ambiente de desenvolvimento da Microsoft, o Visual Studio 2017 se encaixa perfeitamente nesse primeiro mundo móvel e em nuvem; os desenvolvedores podem usar o Visual Studio 2017 para criar aplicativos que sejam executados em qualquer plataforma e qualquer dispositivo com o idioma e a estrutura de sua escolha. Por exemplo, o Visual Studio 2017 permite que você escreva aplicativos Node.js, aplicativos iOS e Android nativos e aplicativos da Web executados no Linux e no Mac OS. A boa notícia é que você, como desenvolvedor, ainda pode usar as mesmas ferramentas poderosas que você já conhece, como o depurador, IntelliSense e profilers em todas as plataformas de desenvolvimento suportadas. Neste e-book, Assim como seus predecessores, o Visual Studio 2017 está disponível em diferentes edições, como Community, Professional e Enterprise. Se um recurso exigir uma edição específica, ele será destacado quando apropriado. Você pode baixar a edição da Comunidade de graça. pode baixar a edição da Comunidade de graça. pode baixar a edição da Comunidade de graça. Um aviso final final - este e-book foi escrito com base no Release Candidate (RC) do Visual Studio 2017, o que significa que algumas ferramentas podem estar sujeitas a pequenas alterações na versão final. Este livro é dedicado à minha namorada Angelica. Sou muito grato por tudo que você faz por nós. Alessandro https://www.visualstudio.com/vs/ 12 Capítulo 1 Uma nova experiência de instalação O Microsoft Visual Studio sempre foi um ambiente de desenvolvimento extremamente poderoso. Uma das razões de seu poder é que ele pode atingir várias plataformas de desenvolvimento e, com as versões 2013 e 2015, adicionou a opção de segmentar tecnologias e sistemas operacionais que não sejam da Microsoft. Por exemplo, pense no desenvolvimento para Android e iOS com o Xamarin e o Apache Cordova. Mas o grande poder também significa uma infraestrutura complexa e, no passado, o Visual Studio exigia muitas horas para a instalação e uma enorme quantidade de espaço no disco. No Visual Studio 2017, a Microsoft traz uma nova experiência de instalação que simplifica o processo e economiza tempo e espaço em disco. Instalar o Visual Studio 2017 será sua primeira experiência com a nova versão e merece uma discussão completa. Resolvendo a complexidade da instalação do Visual Studio Tendo em mente a importância do desempenho geral e da eficiência de sua ferramenta de desenvolvimento, um dos objetivos da Microsoft para o Visual Studio 2017 foi simplificar o processo de instalação para economizar tempo e espaço em disco dos desenvolvedores. Com o Visual Studio 2015, uma instalação completa exigiu muitos gigabytes em disco e várias horas para ser concluída. Resolver esse problema significa repensar toda a infraestrutura do IDE e mudar a maneira como o Visual Studio consome os componentes de que depende e a maneira como ele permite o direcionamento de diferentes plataformas de desenvolvimento. Com base nessas alterações, o Visual Studio 2017 agora é feito de um shell principal que inclui o editor de código e as ferramentas essenciais, conhecido como Editor principal do Visual Studio. Isso fornece recursos para escrever código em vários idiomas, essenciais, conhecido como Editor principal do Visual Studio. Isso fornece recursos para escrever código em vários idiomas, essenciais, conhecido como Editor principal do Visual Studio. Isso fornece recursos para escrever código em vários idiomas, incluindo (mas não limitado a) Visual Basic, C #, C ++ e Python, além de colorização de sintaxe, IntelliSense e suporte a depuração, tudo no ambiente familiar do Visual Studio (consulte Capítulo 5, "Trabalhando com soluções, pastas e idiomas" ). tudo no ambiente familiar do Visual Studio (consulte Capítulo 5, "Trabalhando com soluções, pastas e idiomas" ). tudo no ambiente familiar do Visual Studio (consulte Capítulo 5, "Trabalhando com soluções, pastas e idiomas" ). Além disso, o Visual Studio 2017 suporta a adição de conjuntos de componentes, cada um direcionado a um cenário de desenvolvimento específico. Cada conjunto de componentes é referido como carga de trabalho. As cargas de trabalho facilitam a instalação e a manutenção e específico. Cada conjunto de componentes é referido como carga de trabalho. As cargas de trabalho facilitam a instalação e a manutenção e específico. Cada conjunto de componentes é referido como carga de trabalho. As cargas de trabalho facilitam a instalação e a manutenção e permitem que os desenvolvedores instalem o que realmente precisam sem componentes, SDKs e ferramentas desnecessários. Você pode até mesmo decidir instalar apenas o editor principal do Visual Studio sem cargas de trabalho adicionais para obter o ambiente de codificação básico, o que reduziria o espaço requerido pela instalação do Visual Studio para aproximadamente 750 megabytes. Você provavelmente precisará de mais do que apenas realce de sintaxe, o que significa que você desejará selecionar as cargas de trabalho adequadas - isso apenas lhe dá uma ideia de como a infraestrutura do Visual Studio foi revisitada. A próxima seção descreverá como instalar o Visual Studio 2017 e explicar mais sobre cargas de trabalho e o que você pode fazer com cada uma delas. Instalando o Visual Studio 2017 Dica: O Visual Studio 2017 pode ser instalado lado a lado em uma máquina que possui versões anteriores do IDE instaladas. 13 Quando você inicia o programa de instalação, é solicitada uma interface de usuário completamente nova que apresenta uma lista de cargas de trabalho. Isso é representado na Figura 1. Figura 1: Iniciando a instalação do Visual Studio 2017 Como você pode ver, as cargas de trabalho são agrupadas pelas seguintes categorias: • janelas • Web e nuvem • Mobile & Gaming • Outros conjuntos de ferramentas Todas as cargas de trabalho disponíveis podem ser descobertas rolando a lista (veja a Figura 2). Figura 2: Cargas de trabalho adicionais 14 Você pode selecionar todas as cargas de trabalho necessárias para o seu trabalho diário com o Visual Studio 2017. Se você não selecionar cargas de trabalho, somente o editor principal do Visual Studio será instalado. No lado direito da caixa de diálogo, você pode expandir o nome da carga de trabalho e ver quais componentes inclui e uma lista de componentes adicionais e individuais. A Tabela 1 descreve as cargas de trabalho disponíveis em mais detalhes. Tabela 1: Cargas de trabalho disponíveis para o Visual Studio 2017 Nome Descrição Desenvolvimento da Plataforma Universal do Windows Selecione esta carga de trabalho se quiser gravar aplicativos universais para o Windows 10, incluindo dispositivos para PC, tablets, smartphones, HoloLens, Xbox e IoT. .Desenvolvimento de desktop NET Selecione esta carga de trabalho se você deseja criar aplicativos de área de trabalho clássicos do Windows com WPF, Windows Forms e aplicativos de console usando o .NET Framework. Isso proporciona menor tempo de carregamento da solução e melhor IntelliSense, navegação de código e refatoração. Ele inclui novos recursos, como XAML Edit e Continue e depuração de execução a clique, os quais são discutidos neste e-book. Desenvolvimento de desktopcom C ++ Selecione esta carga de trabalho se desejar criar, criar e depurar aplicativos de desktop clássicos e nativos executados em versões que variam do Windows XP até a versão mais recente do Windows 10, usando a linguagem e o ambiente do C ++. ASP.NET e desenvolvimento web Selecione esta carga de trabalho para desenvolver aplicativos da Web usando ASP.NET e tecnologias baseadas em padrões, como HTML, JavaScript, CSS e JSON. Assim como no desktop .NET, essa carga de trabalho inclui menor tempo de carregamento de solução, IntelliSense aprimorado, navegação de código e mais refatoração, além de permitir a implantação rápida do aplicativo em um servidor da Web ou no Azure. Desenvolvimento do Azure Essa carga de trabalho instala o SDK do Azure para .NET e as ferramentas do Visual Studio 2017 mais recentes. Ele permite que você visualize recursos no Cloud Explorer, crie recursos usando as ferramentas do Azure Resource Manager e crie aplicativos e serviços prontos para serem hospedados no Azure. Desenvolvimento do Node.js Essa carga de trabalho adiciona tudo o que você precisa para criar aplicativos para o Node.js, incluindo IntelliSense, depuração local e remota, criação de perfil, integração npm, uma janela interativa, corredores de teste e integração do Azure. Armazenamento e processamento de dados Essa carga de trabalho fornece ferramentas para acessar bancos de dados locais do SQL Server, bem como bancos de dados SQL em recursos do Azure e do Azure Data Lakes. Ele também fornece suporte para U-SQL, Hive e Big Data no Azure. Desenvolvimento do Office / SharePoint Essa carga de trabalho fornece as ferramentas para desenvolvedores do Office, que permitem a criação de suplementos e soluções do Office e do SharePoint. 15 Nome Descrição .Desenvolvimento de crossplataformas do NET Core Essa carga de trabalho instala todas as ferramentas necessárias para escrever aplicativos da Web de plataforma cruzada com o .NET Core, com suporte para implantação em contêineres do Docker. Desenvolvimento móvel com .NET Essa carga de trabalho instala o Xamarin, a tecnologia que permite criar aplicativos nativos para iOS, Android e Plataforma Universal do Windows usando uma base de código C # compartilhada. Desenvolvimento de jogos com o Unity Selecione esta carga de trabalho se você quiser desenvolver jogos 2D e 3D multiplataforma usando o framework Unity e ferramentas integradas para o Visual Studio 2017. Desenvolvimento móvel com JavaScript Essa carga de trabalho instala o Apache Cordova para criar aplicativos móveis de plataforma cruzada usando HTML e JavaScript no Visual Studio. Desenvolvimento móvel com C ++ Selecione esta carga de trabalho se você deseja criar aplicativos móveis de plataforma cruzada usando C ++. Desenvolvimento de jogos com C ++ Selecione esta carga de trabalho se você deseja criar jogos usando C ++. Desenvolvimento de extensão do Visual Studio Essa carga de trabalho instala o Visual Studio SDK e permite que você escreva extensões como novos comandos, janelas de ferramentas e modelos. Desenvolvimento Linux com C ++ Essa carga de trabalho permite que você crie código C ++ para servidores, desktops e dispositivos Linux a partir do Visual Studio 2017. Para fins de instrução deste e-book, eu instalei todas as cargas de trabalho disponíveis. Você não é obrigado a fazer o mesmo - sinta-se à vontade para selecionar apenas aqueles que precisa. Posteriormente, você pode instalar cargas de trabalho adicionais conforme necessário. Customizando a instalação com componentes individuais Embora as cargas de trabalho ajudem a manter a instalação simples, talvez você ainda precise instalar componentes individuais. Na Figura 2, você verá um item chamado Componentes individuais. Clique para acessar a lista completa de componentes individuais que podem ser instalados, verá um item chamado Componentes individuais. Clique para acessar a lista completa de componentes individuais que podem ser instalados, verá um item chamado Componentes individuais. Clique para acessar a lista completa de componentes individuais que podem ser instalados, independentemente das cargas de trabalho selecionadas (veja a Figura 3). 16 Figura 3: Selecionando Componentes Individuais Por exemplo, a extensão do GitHub para o Visual Studio 2017 não está selecionada por padrão, o que significa que você pode querer selecionar esse componente se planeja trabalhar com repositórios Git nesse serviço popular. Depois de fazer sua seleção, clique em Perto e selecione a edição do Visual Studio 2017 que você deseja instalar. Uma caixa de diálogo mostrará o progresso clique em Perto e selecione a edição do Visual Studio 2017 que você deseja instalar. Uma caixa de diálogo mostrará o progresso clique em Perto e selecione a edição do Visual Studio 2017 que você deseja instalar. Uma caixa de diálogo mostrará o progresso da operação (veja a Figura 4). Figura 4: Progresso da Instalação O tempo necessário para a instalação completa depende do número de cargas de trabalho e de sua conexão com a Internet. Mas, mesmo com muitas cargas de trabalho selecionadas, você notará que é muito mais rápido do que as instalações anteriores do Visual Studio. 17 Instalando várias edições Com o Visual Studio 2017, você pode finalmente instalar várias edições na mesma máquina. Esse ótimo recurso significa que você pode instalar as edições Community, Professional e Enterprise na mesma máquina (ou em quaisquer duas delas). Isso agora é possível porque cada edição é instalada em uma subpasta específica no sistema. Além de executar instaladores separados, você poderia iniciar uma nova instalação diretamente do programa de instalação atual. A Figura 4 mostra um botão Instalar para as edições Community e Professional enquanto o Enterprise está sendo instalado. Nota: Os conjuntos principais do Visual Studio não são mais instalados no GAC (Global Assembly Cache). Para suportar a instalação de várias edições, a maioria dos assemblies exigidos pelo Visual Studio 2017 agora reside em C: \ Arquivos de Programas (x86) \ Microsoft Visual Studio \ 2017 \% editionName% \ Common7 \ IDE \ PublicAssemblies, em que% editionName% é a edição instalada (como Comunidade, Professional ou Enterprise). Modificando a instalação do Visual Studio 2017 O Visual Studio 2017 oferece um novo atalho para modificar uma instalação existente. Você simplesmente vai ao Windows> Todos os O Visual Studio 2017 oferece um novo atalho para modificar uma instalação existente. Você simplesmente vai ao Windows> Todos os Programas menu e selecione o Instalador do Visual Studio atalho. Isso iniciará o programa de instalação e você terá a opção de Programas menu e selecione o Instalador do Visual Studio atalho. Isso iniciará o programa de instalação e você terá a opção de Programas menu e selecione o Instalador do Visual Studio atalho. Isso iniciará o programa de instalação e você terá a opção de Programas menu e selecione o Instalador do Visual Studio atalho. Isso iniciará o programa de instalação e você terá a opção de adicionar ou remover cargas de trabalho ou componentes individuais. Lançamento do Visual Studio 2017 Como no seu antecessor, o Visual Studio 2017 é iniciado usando o atalho com o mesmo nome no menu Todos os Programas. Quando ele for iniciado pela primeira vez, o Visual Studio solicitará as credenciais da sua conta da Microsoft para efetuar logon (opcional). Como você deve saber, a inserção de uma conta da Microsoft permitirá a sincronização das configurações nas máquinas. Isso também restaurará automaticamente as configurações personalizadas que você pode ter em uma instalação existente do VS 2017. Ao iniciar o Visual Studio, você reconhecerá imediatamente melhor desempenho e inicialização mais rápida que o Visual Studio 2015. Outros novos recursos na inicialização são descritos no próximo capítulo. Resumo do capítuloO Visual Studio 2017 introduz uma experiência de instalação completamente nova com base no editor principal do Visual Studio e em várias cargas de trabalho, cada uma direcionada a cenários de desenvolvimento específicos. Isso não apenas simplifica o processo de instalação, mas instalar o Visual Studio agora é muito mais rápido e eficiente. Você ainda mantém controle total dos componentes instalados e pode até instalar várias edições do Visual Studio 2017 na mesma máquina. Agora que você configurou o ambiente, você encontrará alguns novos recursos ao iniciar o Visual Studio 2017 pela primeira vez. 18 Capítulo 2 A Página Inicial Revisitada O Visual Studio 2017 melhorou o desempenho e a eficiência de várias maneiras. Você notará isso imediatamente quando iniciar o IDE, que será carregado mais rapidamente do que seus predecessores recentes. Não se limitando ao desempenho, a nova versão oferece uma experiência inicial aprimorada por meio de uma Página inicial revisada. Experiência de início otimizada o Página inicial é o primeiro contato que você terá com o Visual Studio 2017, o que significa que ele desempenha um papel o Página inicial é o primeiro contato que você terá com o Visual Studio 2017, o que significa que ele desempenha um papel o Página inicial é o primeiro contato que você terá com o Visual Studio 2017, o que significa que ele desempenha um papel importante. Na nova versão, a Página inicial foi reorganizada e otimizada para oferecer mais espaço para atalhos e ferramentas comuns. A Figura 5 mostra a nova página inicial. Figura 5: A nova página inicial O primeiro novo recurso na página inicial permite que o Iniciar área a ser removida clicando no X ícone no canto superior direito. O primeiro novo recurso na página inicial permite que o Iniciar área a ser removida clicando no X ícone no canto superior direito. O primeiro novo recurso na página inicial permite que o Iniciar área a ser removida clicando no X ícone no canto superior direito. O primeiro novo recurso na página inicial permite que o Iniciar área a ser removida clicando no X ícone no canto superior direito. O primeiro novo recurso na página inicial permite que o Iniciar área a ser removida clicando no X ícone no canto superior direito. Esta área contém atalhos para recursos e documentação de aprendizado, mas você também pode ocultá-la para economizar espaço para outros conteúdos. Estes são descritos nas próximas seções. 19 Dica: no Visual Studio 2017, o comando de menu para abrir a Página inicial foi movido do Visão menu Dica: no Visual Studio 2017, o comando de menu para abrir a Página inicial foi movido do Visão menu Dica: no Visual Studio 2017, o comando de menu para abrir a Página inicial foi movido do Visão menu para o Arquivo cardápio. para o Arquivo cardápio. para o Arquivo cardápio. Ficar atualizado: Anúncios e novidades Assim como seus predecessores, o Visual Studio 2017 oferece uma lista de anúncios e notícias dos canais oficiais da Microsoft (veja a Figura 5). No entanto, na nova versão, essa lista foi movida para um painel recolhível no lado direito da página chamado Notícias a Figura 5). No entanto, na nova versão, essa lista foi movida para um painel recolhível no lado direito da página chamado Notícias do desenvolvedor. A Figura 6 mostra como a Página inicial aparece com o painel Notícias do desenvolvedor, oculto. do desenvolvedor. A Figura 6 mostra como a Página inicial aparece com o painel Notícias do desenvolvedor, oculto. Figura 6: Recolhendo o Painel de Notícias do Desenvolvedor Colapsando o painel Notícias do desenvolvedor, você pode ter mais espaço para itens e ferramentas usados recentemente. Basta clicar na seta para restaurar o painel. No entanto, observe que, quando estiver em colapso, você será notificado sobre notícias atualizadas por meio de um glifo laranja que sobreporá a seta. 20 Atalhos para soluções, projetos e pastas O Visual Studio 2017 oferece atalhos para abrir e criar projetos rapidamente. Isso não é de fato novo, mas há várias alterações e melhorias na nova versão. Trabalhando com os projetos usados mais recentemente A lista de projetos usados mais recentemente (MRUs) está no lado esquerdo da Página inicial. Juntamente com os projetos usados recentemente, o Visual Studio 2017 também mostrará a lista de repositórios clonados recentemente do Visual Studio Team Services e do GitHub, que são representados com um ícone de pasta. Ainda mais interessante, essa lista é sincronizada entre as máquinas se você efetuar login no Visual Studio com uma conta da Microsoft, o que significa que você verá essa lista em qualquer uma das suas instalações do Visual Studio 2017. Isso tornará mais fácil clonar os mesmos repositórios todas as suas máquinas. A Figura 7 mostra a lista de MRUs, incluindo repositórios clonados. Figura 7: Lista de MRUs e Repositórios Clonados 21 Acessando modelos de projeto A nova Página inicial facilita a criação de novos projetos, selecionando modelos diferentes. No Novo projeto área, que você pode ver A nova Página inicial facilita a criação de novos projetos, selecionando modelos diferentes. No Novo projeto área, que você pode ver A nova Página inicial facilita a criação de novos projetos, selecionando modelos diferentes. No Novo projeto área, que você pode ver em todas as figuras anteriores, você pode encontrar uma lista de modelos de projeto usados recentemente que você pode clicar para criar um novo projeto com base nesse modelo. Essa lista é sincronizada entre máquinas e também mostra a linguagem de programação usada com o modelo de projeto. Na verdade, quando você clica em um modelo recente, o Visual Studio 2017 mostra Novo programação usada com o modelo de projeto. Na verdade, quando você clica em um modelo recente, o Visual Studio 2017 mostra Novo projeto diálogo com o modelo especificado já selecionado. Além disso, clicando Mais modelos de projetos, a caixa de diálogo Novo projeto diálogo com o modelo especificado já selecionado. Além disso, clicando Mais modelos de projetos, a caixa de diálogo Novo projeto diálogo com o modelo especificado já selecionado. Além disso, clicando Mais modelos de projetos, a caixa de diálogo Novo projeto diálogo com o modelo especificado já selecionado. Além disso, clicando Mais modelos de projetos, a caixa de diálogo Novo projeto aparecerá e fornecerá uma opção para decidir qual modelo de projeto usar. Finalmente, você pode procurar por modelos de projeto diretamente na Página inicial digitando o Pesquisar modelos de projeto caixa de texto. projeto diretamente na Página inicial digitando o Pesquisar modelos de projeto caixa de texto. projeto diretamente na Página inicial digitando o Pesquisar modelos de projeto caixa de texto. Abrindo projetos, pastas e repositórios do controle de origem o Abrir área na página inicial fornece atalhos para abrir projetos e sites. Existem vários novos recursos muito interessantes o Abrir área na página inicial fornece atalhos para abrir projetos e sites. Existem vários novos recursos muito interessantes o Abrir área na página inicial fornece atalhos para abrir projetos e sites. Existem vários novos recursos muito interessantes no Visual Studio 2017. O primeiro recurso vem com um atalho chamado Pasta aberta. Isso permite abrir pastas contendo no Visual Studio 2017. O primeiro recurso vem com um atalho chamado Pasta aberta. Isso permite abrir pastas contendo no Visual Studio 2017. O primeiro recurso vem com um atalho chamado Pasta aberta. Isso permite abrir pastas contendo sortimentos de arquivos de código que não são baseados em sistemas de projetos proprietários. Isso será examinado minuciosamente em Capítulo 5, "Trabalhando com soluções, pastas e idiomas". O segundo novo recurso facilita a abertura de projetos a partir de mecanismos de controle de origem, como Team Foundation Server, Visual Studio Team Services e Git. Como você pode ver na Figura 7, o grupo chamado Checkout de oferecedois atalhos: Server, Visual Studio Team Services e Git. Como você pode ver na Figura 7, o grupo chamado Checkout de oferece dois atalhos: Server, Visual Studio Team Services e Git. Como você pode ver na Figura 7, o grupo chamado Checkout de oferece dois atalhos: • Serviços da equipe do Visual Studio • GitHub O primeiro atalho permitirá que você abra projetos de equipe ou repositórios Git do Visual Studio Team Services e do Team Foundation Server. O segundo atalho permite abrir ou clonar repositórios Git do GitHub. Naturalmente, você ainda pode gerenciar as conexões do projeto de equipe com a janela da ferramenta Team Explorer. Dica: O atalho do GitHub está disponível somente se você instalar a extensão GitHub para o Visual Studio 2017. Isso pode ser facilmente selecionado na lista de componentes individuais dentro do Visual Studio Installer. Resumo do capítulo O Visual Studio 2017 melhora a produtividade do desenvolvedor a partir do momento em que é iniciado. Com a nova página inicial, o espaço disponível foi reorganizado para oferecer mais atalhos para as ferramentas comumente usadas. Além disso, novos recursos foram introduzidos para dar suporte a projetos de equipe e repositórios, incluindo a lista de repositórios clonados recentemente (que é sincronizada entre máquinas) e a opção de abrir projetos de mecanismos de controle de origem, como Git e Visual Studio Team Services. 22 Capítulo 3 Melhorias no Editor de Código O editor de código é o local onde você gasta a maior parte da vida do desenvolvedor, e a Microsoft introduz melhorias de produtividade em todas as principais versões do IDE. O Visual Studio 2017 não é uma exceção - ele apresenta vários recursos excelentes para melhorar sua experiência de codificação. Nota: Todos os tópicos descritos neste capítulo se aplicam ao C # e ao Visual Basic, exceto onde expressamente especificado. Além disso, lembre-se de que C #, Visual Basic, C ++ e F # também fornecem vários recursos de novos idiomas que não são abordados neste capítulo, que se concentram na experiência de edição de código. Visite a Documentação do Visual Studio para obter mais informações sobre o que há de novo nas linguagens de Visite a Documentação do Visual Studio para obter mais informações sobre o que há de novo nas linguagens de Visite a Documentação do Visual Studio para obter mais informações sobre o que há de novo nas linguagens de programação no Visual Studio 2017. Melhorias do IntelliSense A ferramenta IntelliSense há muito tempo é a melhor amiga de todos os desenvolvedores que usam o Microsoft Visual Studio. No Visual Studio 2017, o IntelliSense obtém grandes melhorias que ajudarão você a economizar tempo durante a codificação. Primeiro, o IntelliSense agora é mais inteligente com filtragem. Em vez de sugerir o item principal na lista, ele mostra automaticamente o melhor resultado correspondente com base no que você digitou. E, não limitado a isso, ele começa a destacar as palavras em negrito enquanto você digita, como mostra a Figura 8. Figura 8: Sugestões e filtros do IntelliSense https://docs.microsoft.com/en-us/visualstudio/#pivot=languages https://docs.microsoft.com/en-us/visualstudio/#pivot=languages 23 A filtragem baseada em tipos ou membros específicos é outra melhoria importante no Visual Studio. Como você pode ver na Figura 8, há uma nova barra com muitos ícones na parte inferior do IntelliSense, cada ícone representando um tipo específico de objeto ou membro, como variáveis locais, constantes, propriedades, campos, métodos, interfaces, classes, valor tipos, enumerações, delegados, namespaces, palavras reservadas e até trechos de código. Por exemplo, a Figura 9 mostra como restringir as pesquisas de membros do IntelliSense a métodos, classes e snippets de código. Figura 9: Filtrando a pesquisa do IntelliSense Clique em um ícone para adicionar ou remover o filtro especificado. Essa nova opção simplifica drasticamente a maneira como você pode aproveitar a conclusão de palavras, especialmente quando você sabe de antemão que tipo de objetos precisa trabalhar. Navegação de código facilitada Mover-se rapidamente entre definições de tipos e invocações ou atribuições de membros é crucial para a produtividade, especialmente com dezenas de arquivos de código. O Visual Studio 2017 introduz uma série de melhorias interessantes na navegação por código, aumentando assim sua produtividade. 24 Encontrar todas as referências Localizar todas as referências é uma janela de ferramenta popular que você pode usar para ver onde e como um objeto ou membro foi usado em sua solução. Ainda é mais útil para desenvolvedores que não podem tirar proveito da ferramenta CodeLens, que está disponível apenas na edição Enterprise. Com versões anteriores do Visual Studio, o recurso Localizar todas as referências mostrava uma lista de linhas de código em que um objeto ou membro era usado, incluindo sua definição, e fornecia uma opção para clicar duas vezes em uma linha na lista e ser imediatamente redirecionada para a linha de código no editor. No Visual Studio 2017, o recurso Localizar todas as referências agrupa referências de objetos e membros por projeto e, em seguida, por tipo, com a colorização de sintaxe e uma interface de usuário mais intuitiva. A Figura 10 mostra um exemplo baseado em referências a uma classe chamada Pessoa, que é usado em dois projetos diferentes. A Figura 10 mostra um exemplo baseado em referências a uma classe chamada Pessoa, que é usado em dois projetos diferentes. A Figura 10 mostra um exemplo baseado em referências a uma classe chamada Pessoa, que é usado em dois projetos diferentes. Figura 10: Localizar todas as referências Referências de grupos com Colorização de sintaxe Como você pode ver, a nova visualização facilita a visualização de onde e como um objeto foi usado. A janela da ferramenta mostra o número de referências perto do nome do projeto, seus tipos e seus membros. Você ainda pode clicar duas vezes em um item para abrir o editor de código na linha selecionada. Se você passar o mouse sobre uma referência, uma dica de ferramenta colorida mostrará uma prévia do bloco de código que faz referência ao objeto ou membro (consulte a Figura 11). 25 Figura 11: Dica de ferramenta colorida mostra uma visualização do bloco de código que faz referência a um objeto Por padrão, Localizar todas as referências mostra referências em toda a solução. Você pode filtrar a lista através de documentos abertos, o projeto atual, o documento atual e documentos com alterações pendentes. Além disso, por padrão, Localizar todas as referências agrupa itens por projeto e, em seguida, por definição de objeto. A Tabela 2 mostra uma lista de objetos de agrupamento disponíveis que você pode encontrar no Agrupar porencontrar no Agrupar por caixa combo. Tabela 2: Opções de agrupamento para localizar todas as referências Opção Descrição Projeto e Definição Grupos por projeto, depois por definição de objeto (padrão). Definição apenas Grupos por objeto ou definição de membro, sem a hierarquia do projeto. Definição então Projeto Agrupa por definição de objeto e, em seguida, por projeto. Definição, em seguida, caminho Agrupa por definição de objeto e, em seguida, pelo caminho do arquivo de código que contém a definição. Definição, Projeto e Caminho Agrupa por definição de objeto, depois por projeto e, em seguida, pelo caminho do arquivo de código. Você também pode pesquisar entre os resultados com o Procurar Localizar todas as referências caixa de texto e bloquear os resultados atuais clicando em Mantenha Você também pode pesquisar entre os resultados com o Procurar Localizar todas as referências caixa de texto e bloquear os resultados atuais clicando em Mantenha Você também pode pesquisar entre os resultados com o Procurar Localizar todas as referências caixa de texto e bloquear os resultados atuais clicando em Mantenha Você também pode pesquisarentre os resultados com o Procurar Localizar todas as referências caixa de texto e bloquear os resultados atuais clicando em Mantenha os resultados. 26 Navegando pelo código com Ir para O Visual Studio 2017 apresenta um novo recurso de navegação chamado Vamos para, que substitui e melhora outra ferramenta popular O Visual Studio 2017 apresenta um novo recurso de navegação chamado Vamos para, que substitui e melhora outra ferramenta popular O Visual Studio 2017 apresenta um novo recurso de navegação chamado Vamos para, que substitui e melhora outra ferramenta popular conhecida como Navegar para. Para ativar Go To, basta pressionar Ctrl + T. Um pop-up de navegação aparece e lista automaticamente todas as ocorrências do identificador onde o cursor estava quando você pressionou Ctrl + T. A figura 12 mostra um exemplo. Figura 12: Ir para Listagem Ocorrências do Identificador Especificado Você pode refinar sua pesquisa digitando na barra de pesquisa. A lista será atualizada automaticamente com quaisquer palavras que correspondam ao que você digitou. Como o IntelliSense, Go To tem uma nova barra de ferramentas no topo que permite uma filtragem fácil com base no tipo de objeto. Você pode filtrar por arquivo de código, tipo, método, membros de objeto e linha de código. Com Go To, você só pode aplicar um filtro por vez. Observe que quando você clica nos botões de filtro, a caixa de pesquisa mostra caracteres especiais antes de uma palavra ou identificador. Por exemplo, o t Um caractere anterior a qualquer palavra na caixa de pesquisa filtrará a lista por tipo, enquanto o uma palavra ou identificador. Por exemplo, o t Um caractere anterior a qualquer palavra na caixa de pesquisa filtrará a lista por tipo, enquanto o uma palavra ou identificador. Por exemplo, o t Um caractere anterior a qualquer palavra na caixa de pesquisa filtrará a lista por tipo, enquanto o caractere # será filtrado por método. Outros caracteres suportados são f ( arquivos), mcaractere # será filtrado por método. Outros caracteres suportados são f ( arquivos), mcaractere # será filtrado por método. Outros caracteres suportados são f ( arquivos), mcaractere # será filtrado por método. Outros caracteres suportados são f ( arquivos), m (membros) e: (números de linha). Estes são muito úteis. Se você souber antecipadamente que tipo de objeto ou membro está procurando, eles podem acelerar sua pesquisa. Ir para tem configurações que podem ser personalizadas. Se você clicar no Mostrar configurações botão no canto direito da barra de Ir para tem configurações que podem ser personalizadas. Se você clicar no Mostrar configurações botão no canto direito da barra de Ir para tem configurações que podem ser personalizadas. Se você clicar no Mostrar configurações botão no canto direito da barra de ferramentas, você será capaz de decidir se deseja mostrar uma guia de visualização ou ativar uma visão detalhada. A Figura 13 mostra uma exibição personalizada que filtra por tipo e mostra detalhes como o projeto, o arquivo de código e o número da linha que contém o tipo selecionado. 27 Figura 13: Personalizando o Go To View Na verdade, Ctrl + T é um atalho para o Ir para todos comando no Editar cardápio. O menu Editar possui comandos adicionais Ir Na verdade, Ctrl + T é um atalho para o Ir para todos comando no Editar cardápio. O menu Editar possui comandos adicionais Ir Na verdade, Ctrl + T é um atalho para o Ir para todos comando no Editar cardápio. O menu Editar possui comandos adicionais Ir Na verdade, Ctrl + T é um atalho para o Ir para todos comando no Editar cardápio. O menu Editar possui comandos adicionais Ir Na verdade, Ctrl + T é um atalho para o Ir para todos comando no Editar cardápio. O menu Editar possui comandos adicionais Ir para (por exemplo, Ir para tipo e Ir para membro), cada um mapeado para um filtro na janela da ferramenta Ir para. Se você selecionar um desses comandos, Ir para aparece com o filtro apropriado ativado. Isso pode acelerar a navegação do código, especialmente se você usar os atalhos de teclado fornecidos. Linhas de guia de estrutura O editor de código do Visual Studio 2017 apresenta um recurso conhecido como Visualizador de estrutura que anteriormente estava O editor de código do Visual Studio 2017 apresenta um recurso conhecido como Visualizador de estrutura que anteriormente estava O editor de código do Visual Studio 2017 apresenta um recurso conhecido como Visualizador de estrutura que anteriormente estava disponível na extensão Productivity Power Tools para o Visual Studio 2015. Com esse recurso ativado, o editor desenha linhas de guia de estrutura - pequenas linhas verticais cinza próximas a cada bloco de código que facilitam a visualização da estrutura de seu código. Se você passar o mouse sobre as linhas de guia estruturadas, o editor mostrará uma dica de ferramenta com uma visualização do código pai do bloco atual. Isso é demonstrado na Figura 14. Figura 14: Visualizando a estrutura do código com linhas de guia 28 Esse recurso é muito útil com blocos de código longos e é ativado por padrão. Se você quiser desativá-lo, vá para Ferramentas > Esse recurso é muito útil com blocos de código longos e é ativado por padrão. Se você quiser desativá-lo, vá para Ferramentas > Esse recurso é muito útil com blocos de código longos e é ativado por padrão. Se você quiser desativá-lo, vá para Ferramentas > Opções > Editor de texto, e limpar o Mostrar linhas de guia de estruturaOpções > Editor de texto, e limpar o Mostrar linhas de guia de estruturaOpções > Editor de texto, e limpar o Mostrar linhas de guia de estruturaOpções > Editor de texto, e limpar o Mostrar linhas de guia de estruturaOpções > Editor de texto, e limpar o Mostrar linhas de guia de estrutura opção. Análise de código Roslyn Juntamente com o Visual Studio 2017, a Microsoft está lançando o C # 7.0 e o Visual Basic 15 com uma versão atualizada do .NET Compiler Platform, também conhecido como Projeto Roslyn . A .NET Compiler Platform oferece compiladores de código aberto C # e Visual Basic com Platform, também conhecido como Projeto Roslyn . A .NET Compiler Platform oferece compiladores de código aberto C # e Visual Basic com Platform, também conhecido como Projeto Roslyn . A .NET Compiler Platform oferece compiladores de código aberto C # e Visual Basic com APIs de análise de código avançadas. Com essa plataforma, os compiladores são oferecidos como um serviço e os desenvolvedores podem tirar proveito de suas APIs para realizar várias operações em relação ao código-fonte. Se você quiser saber mais sobre Roslyn, você pode ler o e-book Roslyn sucintamente (também escrito por mim). A partir do Visual Studio 2015, um grande número de ferramentas, incluindo o ler o e-book Roslyn sucintamente (também escrito por mim). A partir do Visual Studio 2015, um grande número de ferramentas, incluindo o ler o e-book Roslyn sucintamente (também escrito por mim). A partir do Visual Studio 2015, um grande número de ferramentas, incluindo o editor de código, não são mais ativadas pelo próprio IDE; em vez disso, eles são alimentados por Roslyn. Essas ferramentas incluem a análise de código ao vivo que detecta problemas durante a digitação e a refatoração de código. Conforme descrito em Roslyn sucintamente e análise de código ao vivo que detecta problemas durante a digitação e a refatoração de código. Conforme descrito em Roslyn sucintamente e análise de código ao vivo que detecta problemas durante a digitação e a refatoração de código. Conforme descrito em Roslyn sucintamente e Visual Studio 2015 de forma sucinta Quando o compilador detecta problemas de código enquanto você digita, o editor oferece a lâmpada e Visual Studio 2015 de forma sucinta Quando o compilador detecta problemas de código enquanto você digita, o editor oferece a lâmpada e ações rápidas para corrigir um problema ou refatorar um bloco de código. O Visual Studio 2017 dá alguns passos à frente, fornecendo novas ferramentasde refatoração e uma experiência aprimorada de codificação com base no Roslyn. Mais refatorações Roslyn A nova versão do Roslyn oferece novas refatorações interessantes de código. A seguir, uma lista detalhada das novidades. Simplifique a inicialização do objeto A primeira nova refatoração simplifica a inicialização do objeto. Ele substitui uma inicialização de objeto baseada em atribuições de propriedade por outra baseada em inicializadores de objeto. A Figura 15 mostra essa refatoração em ação. Observe que quando o editor de código detecta uma possível refatoração para uma inicialização de objeto, ele sublinha a invocação do construtor com três pontos cinzas. https://github.com/dotnet/roslyn https://www.syncfusion.com/resources/techportal/details/ebooks/roslyn https://www.syncfusion.com/resources/techportal/details/ebooks/roslyn https://www.syncfusion.com/resources/techportal/details/ebooks/visualstudio2015 29 Figura 15: A refatoração da inicialização do objeto Essa refatoração de código também fornece o recuo adequado quando aplicado. Converter para string interpolada Outra refatoração muito útil converte uma invocação para string.Format para uma string interpolada. Isso é mostrado na Outra refatoração muito útil converte uma invocação para string.Format para uma string interpolada. Isso é mostrado na Outra refatoração muito útil converte uma invocação para string.Format para uma string interpolada. Isso é mostrado na Figura 16. Figura 16: Convertendo string.Format para String Interpolation 30 Você pode ativar essa refatoração clicando com o botão direito do mouse string.Format invocação, não a atribuição. Se você quiser Você pode ativar essa refatoração clicando com o botão direito do mouse string.Format invocação, não a atribuição. Se você quiser Você pode ativar essa refatoração clicando com o botão direito do mouse string.Format invocação, não a atribuição. Se você quiser saber mais sobre a interpolação de strings, visite o página de documentaçãosaber mais sobre a interpolação de strings, visite o página de documentação no MSDN. Mover o tipo para o arquivo correspondente Suponha que você tenha uma classe que não esteja definida em um arquivo individual, mas que seja definida dentro de um arquivo de código que contenha outras definições de tipo ou, mais geralmente, outro código. Uma nova refatoração Roslyn permite mover rapidamente o tipo especificado para um novo arquivo que terá o mesmo nome do tipo. Por exemplo, a Figura 17 mostra uma classe chamada Pessoa que o tipo especificado para um novo arquivo que terá o mesmo nome do tipo. Por exemplo, a Figura 17 mostra uma classe chamada Pessoa que o tipo especificado para um novo arquivo que terá o mesmo nome do tipo. Por exemplo, a Figura 17 mostra uma classe chamada Pessoa que é definido dentro Program.cs. Se você clicar com o botão direito Pessoa, você verá uma refatoração que oferece mover o tipo para um novo é definido dentro Program.cs. Se você clicar com o botão direito Pessoa, você verá uma refatoração que oferece mover o tipo para um novo é definido dentro Program.cs. Se você clicar com o botão direito Pessoa, você verá uma refatoração que oferece mover o tipo para um novo arquivo chamado Person.cs. Figura 17: Mover uma definição de tipo para um arquivo correspondente Esse recurso é extremamente útil se você usá-lo para definir vários tipos em um arquivo de código. A única ressalva é que, se o arquivo de destino já existir, o Visual Studio gerará um novo arquivo e não usará o existente. No exemplo atual, se Person.cs já existir, o Visual Studio gerará Person1.cs e colocará o tipo no arquivo recém-criado. https://msdn.microsoft.com/en-us/library/dn961160.aspx 31 Sincronizando o nome do tipo e o nome do arquivo Se você tiver uma definição de tipo dentro de um arquivo cujo nome não corresponde ao nome do tipo, uma nova refatoração simplificará o trabalho de manter o nome do tipo e o nome do arquivo em sincronia. Por exemplo, se você tem um Pessoa classe definida dentro de um arquivo trabalho de manter o nome do tipo e o nome do arquivo em sincronia. Por exemplo, se você tem um Pessoa classe definida dentro de um arquivo trabalho de manter o nome do tipo e o nome do arquivo em sincronia. Por exemplo, se você tem um Pessoa classe definida dentro de um arquivo chamado Human.cs, você pode renomear o arquivo ou renomeá-lo para torná-lo compatível. A Figura 18 mostra essa refatoração em ação, que você ativa clicando com o botão direito do mouse em um nome de tipo. Figura 18: Mantendo o Nome do Tipo e o Nome do Arquivo em Sincronização A renomeação de arquivos renomeados oferece renomear o arquivo para corresponder ao nome do tipo. Como alternativa, renomear tipo oferece para renomear o tipo para corresponder ao nome do arquivo. Declarações de variáveis inline out Nota: Esta refatoração não está disponível no Visual Basic 15. C # 7.0 introduz um novo recurso conhecido como as variáveis , que fornecem a capacidade de declarar uma variável no ponto em que C # 7.0 introduz um novo recurso conhecido como as variáveis , que fornecem a capacidade de declarar uma variável no ponto em que C # 7.0 introduz um novo recurso conhecido como as variáveis , que fornecem a capacidade de declarar uma variável no ponto em que ela é usada como um argumento out. Roslyn agora oferece uma nova refatoração para suportar esse recurso, conforme mostrado na Figura 19. https://github.com/dotnet/roslyn/issues/6183 32 Figura 19: Apresentando uma Variável Inline Out Com a refatoração de declaração de variável embutida, você pode simplificar o código que usa variáveis de saída introduzindo uma declaração in-line. Controlando análise ao vivo com estilo de código Com o Roslyn, os compiladores podem relatar problemas de código enquanto você digita, não importa que tipo de IDE baseado em Roslyn esteja sendo usado. Com o Visual Studio e antes de Roslyn, o editor de código só podia analisar o código para regras projetadas na Microsoft. Uma das maiores vantagens do Roslyn é que ele permite que você introduza suas próprias regras de análise (com correções e refatorações), e o compilador relatará problemas de código que não adere a essas regras. Embora tenhamos controle total sobre as regras que escrevemos, antes do Visual Studio 2017 não tínhamos controle sobre as regras codificadas na Microsoft, exceto para desativar os avisos. Por exemplo, no Visual Studio 2015, o compilador de segundo plano sempre relata como redundante o uso do isto e Eu palavras-chave avisos. Por exemplo, no Visual Studio 2015, o compilador de segundo plano sempre relata como redundante o uso do isto e Eu palavras-chave avisos. Por exemplo, no Visual Studio 2015, o compilador de segundo plano sempre relata como redundante o uso do isto e Eu palavras-chave avisos. Por exemplo, no Visual Studio 2015, o compilador de segundo plano sempre relata como redundante o uso do isto e Eu palavras-chave avisos. Por exemplo, no Visual Studio 2015, o compilador de segundo plano sempre relata como redundante o uso do isto e Eu palavras-chave em C # e VB, a menos que a palavra-chave seja usada para referenciar um membro que tenha o mesmo nome que a variável que estamos atribuindo (por exemplo, this.name = nome).estamos atribuindo (por exemplo, this.name = nome). Como outro exemplo, no Visual Studio 2015 o compilador sempre sugere que substituímos os nomes do tipo Framework pelas palavras-chave correspondentes; por exemplo, sugere que usamos intpelas palavras-chave correspondentes; por exemplo, sugere que usamos int (C #) ou Inteiro ( VB) em vez de System.Int32. No entanto, há vários motivos pelos quais você pode querer usar esses estilos de codificação. (C #) ou Inteiro ( VB) em vez de System.Int32. No entanto, há vários motivos pelos quais você pode querer usar esses estilos de codificação. (C #) ou Inteiro ( VB) em vez de System.Int32. No entanto, há vários motivos pelos quais você pode querer usaresses estilos de codificação. (C #) ou Inteiro ( VB) em vez de System.Int32. No entanto, há vários motivos pelos quais você pode querer usar esses estilos de codificação. (C #) ou Inteiro ( VB) em vez de System.Int32. No entanto, há vários motivos pelos quais você pode querer usar esses estilos de codificação. Para dar aos desenvolvedores a oportunidade de decidir quais estilos de codificação eles querem usar, com o Visual Studio 2017, a Microsoft introduziu uma nova ferramenta chamada estilo de código. Essa ferramenta permite que você decida como o compilador deve tratar algumas de nossas preferências de codificação, incluindo a nomenclatura. Você alcança as configurações de estilo de código selecionando Ferramentas > nossas preferências de codificação, incluindo a nomenclatura. Você alcança as configurações de estilo de código selecionando Ferramentas > nossas preferências de codificação, incluindo a nomenclatura. Você alcança as configurações de estilo de código selecionando Ferramentas > Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o Opções > Editor de texto, então C # ou Visual básico, e finalmente o Estilo de Código nó. Fornecerei uma descrição baseada em C #, mas o mesmo se aplica ao Visual Basic (posteriormente resumirei as preferências disponíveis para ambos). Em C #, o estilo de código possui formatação geral, (somente C #) e opções de nomenclatura. 33 Dica: nos bastidores, esse recurso é baseado no EditorConfig formato de arquivo. Se você quiser configurar Dica: nos bastidores, esse recurso é baseado no EditorConfig formato de arquivo. Se você quiser configurar Dica: nos bastidores, esse recurso é baseado no EditorConfig formato de arquivo. Se você quiser configurar mais estilos de código, você pode ler isto postagem no blog de mais estilos de código, você pode ler isto postagem no blog de mais estilos de código, você pode ler isto postagem no blog de .NET Team na Microsoft. Estilo de código geral As configurações gerais são provavelmente as opções mais interessantes para alterar o estilo de código. Eles permitem que você altere as preferências em relação a algumas regras de codificação internas. Cada grupo de preferências permite especificar a preferência e o nível de severidade. Se o seu código não corresponder à preferência, o compilador informará uma sugestão, aviso ou erro, dependendo do nível de gravidade escolhido. A gravidade padrão é None, o que significa que o compilador simplesmente ignorará a preferência e não reportará nada. Dica: Lembre-se de que o nível de gravidade Erro impedirá que você crie seu projeto até que o problema do código seja resolvido. Por exemplo, suponha que você queira usar o isto palavra-chave ao referenciar a propriedade de um objeto e que o Por exemplo, suponha que você queira usar o isto palavra-chave ao referenciar a propriedade de um objeto e que o Por exemplo, suponha que você queira usar o isto palavra-chave ao referenciar a propriedade de um objeto e que o compilador deve reportar uma sugestão se seu código não usar a palavra-chave. A Figura 20 mostra como fazer isso. Figura 20: Alterando as Preferências de Estilo de Código http://editorconfig.org/ https://blogs.msdn.microsoft.com/dotnet/2016/12/15/code-style-configuration-in-the-vs2017-rc-update/ 34 Observe como uma prévia de seu código é mostrada na parte inferior da caixa de diálogo da Figura 20, enquanto a Figura 21 mostra o resultado da configuração dessa preferência - o compilador relata uma sugestão sobre a atribuição de propriedade sem isto, e a resultado da configuração dessa preferência - o compilador relata uma sugestão sobre a atribuição de propriedade sem isto, e a resultado da configuração dessa preferência - o compilador relata uma sugestão sobre a atribuição de propriedade sem isto, e a lâmpada oferece para resolver o problema. Figura 21: Alterando o Estilo de Código para o isto Palavra chave Figura 21: Alterando o Estilo de Código para o isto Palavra chave Figura 21: Alterando o Estilo de Código para o isto Palavra chave Como outro exemplo, suponha que você queira controlar o estilo de código para o var palavra chave. Mais especificamente, suponha Como outro exemplo, suponha que você queira controlar o estilo de código para o var palavra chave. Mais especificamente, suponha Como outro exemplo, suponha que você queira controlar o estilo de código para o var palavra chave. Mais especificamente, suponha que você queira evitar o uso var com tipos incorporados e você quer evitar varque você queira evitar o uso var com tipos incorporados e você quer evitar varque você queira evitar o uso var com tipos incorporados e você quer evitar varque você queira evitar o uso var com tipos incorporados e você quer evitar var quando o tipo é aparente a partir de expressões de atribuição. A Figura 22 mostra como fazer isso. 35 Figura 22: Alterando o Estilo do Código para o var Palavra chave Figura 22: Alterando o Estilo do Código para o var Palavra chave Figura 22: Alterando o Estilo do Código para o var Palavra chave No primeiro caso, o compilador reportará um aviso toda vez que você usar var em vez de um tipo integrado, e oferecerá a correção de No primeiro caso, o compilador reportará um aviso toda vez que você usar var em vez de um tipo integrado, e oferecerá a correção de No primeiro caso, o compilador reportará um aviso toda vez que você usar var em vez de um tipo integrado, e oferecerá a correção de código adequada, conforme mostrado na Figura 23. Figura 23: O compilador detecta e corrige incorretamente var Uso Figura 23: O compilador detecta e corrige incorretamente var Uso Figura 23: O compilador detecta e corrige incorretamente var Uso 36 No caso de atribuições aparentes, a Figura 24 mostra como o compilador detecta que atribuir uma instância do Pessoa Tipo No caso de atribuições aparentes, a Figura 24 mostra como o compilador detecta que atribuir uma instância do Pessoa Tipo No caso de atribuições aparentes, a Figura 24 mostra como o compilador detecta que atribuir uma instância do Pessoa Tipo para uma variável é uma atribuição aparente. O compilador, portanto, relata a sugestão para substituir var com o explícito Pessoapara uma variável é uma atribuição aparente. O compilador, portanto, relata a sugestão para substituir var com o explícito Pessoapara uma variável é uma atribuição aparente. O compilador, portanto, relata a sugestão para substituir var com o explícito Pessoapara uma variável é uma atribuição aparente. O compilador, portanto, relata a sugestão para substituir var com o explícito Pessoa tipo, oferecendo a correção adequada através da lâmpada. Figura 24: O compilador detecta uma falha var Uso com uma Tarefa Aparente Figura 24: O compilador detecta uma falha var Uso com uma Tarefa Aparente Figura 24: O compilador detecta uma
Compartilhar