WEBVTT

00:00:05.276 --> 00:00:07.250
Olá todos, sou Kasey Uhlenhuth.

00:00:07.250 --> 00:00:11.530
Sou gerente de programa no .NET
na equipe do Visual Studio na Microsoft.

00:00:11.530 --> 00:00:12.774
Demonstração de hoje

00:00:12.774 --> 00:00:17.138
Vamos falar sobre .NET
Ferramentas no Visual Studio 2017.

00:00:17.138 --> 00:00:22.104
Visual Studio 2017 apresenta uma tonelada
novos recursos de produtividade interessante.

00:00:22.104 --> 00:00:26.269
Eles abrangem áreas na depuração,
análise de código ao vivo

00:00:26.269 --> 00:00:30.984
melhor navegação, IntelliSense,
e os testes de unidade em tempo real.

00:00:30.984 --> 00:00:32.150
Mas isso é suficiente slides.

00:00:32.150 --> 00:00:33.300
Vamos entrar no código.

00:00:34.600 --> 00:00:39.064
Vejamos algumas interessante produtividade
aprimoramentos no Visual Studio

00:00:39.064 --> 00:00:39.786
2017.

00:00:39.786 --> 00:00:43.072
Aqui, tenho uma biblioteca de classe simples
que está ajudando organizar meu

00:00:43.072 --> 00:00:45.818
treinamentos de treinamento de bicicleta diferente.

00:00:45.818 --> 00:00:48.800
A primeira coisa que você pode
reconhecer é

00:00:48.800 --> 00:00:52.870
toneladas de ícones diferentes sobre
aqui, no lado esquerdo.

00:00:52.870 --> 00:00:57.530
Eles fazem parte de um novo recurso
no Visual Studio 2017 Enterprise

00:00:57.530 --> 00:01:00.060
chamado ao vivo testes de unidade.

00:01:00.060 --> 00:01:04.200
Em tempo real de teste de unidade executa continuamente
e exibe os resultados de teste de unidade e

00:01:04.200 --> 00:01:06.920
cobertura de código dentro do editor.

00:01:06.920 --> 00:01:08.430
Ele localiza automaticamente e

00:01:08.430 --> 00:01:11.400
executa testes afetados para
cada edição que é fazer.

00:01:12.700 --> 00:01:17.880
Xs vermelhos indicam linhas de código que
ter falha de teste de hit-los.

00:01:17.880 --> 00:01:21.740
Verificações verdes indicam linhas de
código que passa todos os testes.

00:01:23.140 --> 00:01:26.310
E sinais de subtração azuis
indicar linhas de código

00:01:26.310 --> 00:01:28.590
que não ter nenhuma cobertura de teste.

00:01:30.510 --> 00:01:33.460
Vamos examinar isso
Falha na linha de código.

00:01:33.460 --> 00:01:36.420
Se eu clicar no, agora pode ver

00:01:36.420 --> 00:01:40.720
todos os testes que estão atingindo o nível isso
a linha e todos aqueles que estão falhando.

00:01:40.720 --> 00:01:45.500
Posso navegar a essas falhas
testes, simplesmente clicando duas vezes.

00:01:45.500 --> 00:01:48.110
Agora posso ver que estou
no meu teste com falha.

00:01:49.980 --> 00:01:52.687
Não tenho certeza de que realmente por que
Isso está falhando, isso

00:01:52.687 --> 00:01:55.477
Na verdade, vou
para depurar esse teste.

00:02:01.901 --> 00:02:03.084
Vemos aqui,

00:02:03.084 --> 00:02:07.557
que agora que este teste tem
Na verdade causou uma exceção.

00:02:07.557 --> 00:02:08.811
E se eu examinar de perto,

00:02:08.811 --> 00:02:12.640
Posso ver que esse teste realmente
lança uma exceção de referência nula.

00:02:13.990 --> 00:02:18.141
Quero chamar a sua atenção para
a nova exceção auxiliar terminamos

00:02:18.141 --> 00:02:20.500
introduzido no Visual Studio 2017.

00:02:20.500 --> 00:02:25.378
O que você pode ver aqui é, na verdade
isso agora colocamos mais importantes

00:02:25.378 --> 00:02:27.760
informações de nível superior.

00:02:27.760 --> 00:02:32.560
Por exemplo, podemos realmente dizer
o que é variável será nulo.

00:02:32.560 --> 00:02:36.049
Em outros casos em que um
InnerException, na verdade, vamos

00:02:36.049 --> 00:02:39.320
Para exibir todos o InnerException
detalhes no nível superior.

00:02:41.430 --> 00:02:43.160
Então, vamos investigar isso melhor.

00:02:45.000 --> 00:02:47.942
Posso ver que tenho dois
construtores aqui e

00:02:47.942 --> 00:02:49.810
apenas um deles está falhando.

00:02:49.810 --> 00:02:53.689
E se eu examinar de perto, posso ver
Eu tenho este campo exercícios físicos que

00:02:53.689 --> 00:02:57.500
Eu realmente não inicializou
Este construtor.

00:02:57.500 --> 00:03:00.310
Deixe-me tentar apenas copiar e
colocar isso.

00:03:01.830 --> 00:03:05.030
Agora o verdadeiro benefício do
Testes de unidade em tempo real é que posso fazer

00:03:05.030 --> 00:03:08.330
Essas alterações no código e
em seguida, ele irá ativamente

00:03:08.330 --> 00:03:12.480
localizar quais testes são afetados por
Isso alterar e executá-los para mim.

00:03:12.480 --> 00:03:16.350
Portanto, não preciso fazer qualquer
de mim neste manual.

00:03:16.350 --> 00:03:18.250
Portanto, agora você pode ver aqui,

00:03:18.250 --> 00:03:23.000
Esse teste que está atingindo isso
construtor padrão agora está passando.

00:03:24.460 --> 00:03:27.600
Se eu clicar aqui,
Agora posso navegar volta e

00:03:27.600 --> 00:03:31.910
claro que ver este teste
método está passando em todos os lugares.

00:03:34.524 --> 00:03:38.384
Algo que você talvez tenha observado
dentro desse método é uma cinza

00:03:38.384 --> 00:03:39.341
linha pontilhada.

00:03:40.740 --> 00:03:42.780
E você deve estar se perguntando
O que é isto?

00:03:42.780 --> 00:03:47.354
Isso faz parte de algo novo que
Apresentamos em código ao vivo

00:03:47.354 --> 00:03:50.072
análise no Visual Studio 2017.

00:03:50.072 --> 00:03:53.181
Esses pontos cinza indicam
uma sugestão dentro

00:03:53.181 --> 00:03:58.087
o editor que é menos invasiva
maneira de indicar uma prática recomendada ou

00:03:58.087 --> 00:04:00.559
uma preferência estilísticas possível.

00:04:00.559 --> 00:04:04.181
Antes, você teria que realmente
Para tornar esses erros ou

00:04:04.181 --> 00:04:07.460
avisos com este visual
fila de dentro do editor.

00:04:09.250 --> 00:04:12.742
Agora, porém, pode, na verdade
Passe o mouse sobre esses pontos cinza e

00:04:12.742 --> 00:04:16.984
É possível pressionar Ctrl + ponto para ver o que
sugestão está disponível para mim.

00:04:16.984 --> 00:04:20.157
Caso Observe atentamente, vejo que
Isso está informando que posso

00:04:20.157 --> 00:04:21.695
Use um inicializador de objeto.

00:04:21.695 --> 00:04:26.793
E, é possível pressionar Enter para
Agora, aplique a correção de código.

00:04:26.793 --> 00:04:28.979
Voltando ao meu arquivo de instrutor

00:04:28.979 --> 00:04:33.740
Na verdade, vejo mais pontos
que possuem esses pontos cinza.

00:04:33.740 --> 00:04:35.750
Por exemplo, se eu pesquiso aqui e

00:04:35.750 --> 00:04:39.548
Pressionar Ctrl + ponto, o que pode ver
aqui é que essa correção de código

00:04:39.548 --> 00:04:42.769
sugestão de uso var em vez disso
do tipo explícito.

00:04:44.188 --> 00:04:49.136
Essa é, na verdade, parte de uma nova
recurso do Visual Studio 2017 onde

00:04:49.136 --> 00:04:55.350
podemos agora permitir configuração de código e
aplicação de código dentro do editor.

00:04:55.350 --> 00:04:58.090
Novamente, é possível pressionar Enter
Para aplicar essa correção.

00:04:59.410 --> 00:05:02.750
Se eu desejar investigar o código
Além disso, opções de estilo

00:05:02.750 --> 00:05:06.030
Posso entrar nas Ferramentas > opções e
Digite o estilo de código.

00:05:07.350 --> 00:05:11.315
E veja que, para
preferências de var, escolhi para

00:05:11.315 --> 00:05:16.320
tipos internos preferem var em
o nível de gravidade de sugestão.

00:05:17.460 --> 00:05:19.980
Posso alterar como desejo
Isso aplicadas no editor

00:05:19.980 --> 00:05:24.260
simplesmente clicando nesta lista suspensa
e como eu quero que ele impostas a alteração.

00:05:24.260 --> 00:05:27.360
Se eu for um defendo real para
estilo de código, posso pode impor isso

00:05:27.360 --> 00:05:32.060
como um erro para que o meu código
não compilação se eu violar esta regra.

00:05:33.330 --> 00:05:34.960
Que parece um pouco intenso para
Agora, portanto

00:05:34.960 --> 00:05:36.870
Vou manter
-o como uma sugestão.

00:05:37.970 --> 00:05:40.900
No Visual Studio, estamos sempre
adicionando ações de código e

00:05:40.900 --> 00:05:43.500
refatorações para fazer
desenvolvedores mais produtivos.

00:05:45.770 --> 00:05:49.500
Então, vamos localizar outro locais onde eu
pode Refatorar e corrigir o meu código.

00:05:51.780 --> 00:05:56.010
Se o rolo aqui,
Na verdade, pode ver que

00:05:56.010 --> 00:06:00.830
Nesse método, tenho um monte de
Se declarações sem qualquer chaves.

00:06:00.830 --> 00:06:04.960
E minha equipe realmente, realmente,
realmente altamente recomendável

00:06:04.960 --> 00:06:07.740
Se você usar chaves ao redor
todas as sua instruções.

00:06:09.650 --> 00:06:12.900
Isso em vez de precisar manualmente
Adicionar chaves, adicionamos

00:06:12.900 --> 00:06:17.010
milhares de pequenas ações de código pequeno
para ajudá-lo ao longo do caminho.

00:06:17.010 --> 00:06:21.650
Isso, por exemplo, se eu colocar o cursor
nessa linha, pode agora pressionar Ctrl +.

00:06:21.650 --> 00:06:25.380
E você pode ver que há o
opção de adicionar chaves aqui para mim.

00:06:26.490 --> 00:06:31.205
E se eu navegar pela, posso ver
que, na verdade, posso adicionar chaves

00:06:31.205 --> 00:06:35.303
em todos os lugares no meu documento
projeto ou solução.

00:06:35.303 --> 00:06:39.266
Portanto, se eu quero corrigir isso em todos os lugares em
Meu documento, pois não deseja

00:06:39.266 --> 00:06:42.107
Localizar em todos os lugares onde um se
instrução está escrita,

00:06:42.107 --> 00:06:44.980
Apenas pressiono Enter e
aplica a alteração.

00:06:44.980 --> 00:06:48.830
E pronto, você pode ver que ele
chaves adicionadas em todos os lugares em meu código.

00:06:50.550 --> 00:06:53.760
Outro benefício da
Live Aliás, testes de unidade

00:06:53.760 --> 00:06:57.220
Isso é como fazer qualquer refatoração ou
alteração de código

00:06:57.220 --> 00:07:01.240
Posso ver que ele instantaneamente
o não negativo impacto meu código.

00:07:01.240 --> 00:07:04.130
Isso poderia ver,
Apesar de colocar todas essas chaves

00:07:04.130 --> 00:07:06.766
a refatoração foi
com êxito porque todas as minhas

00:07:06.766 --> 00:07:09.544
testes de unidade ainda estão em execução
que atingir estas linhas.

00:07:12.478 --> 00:07:16.580
Outra coisa que podemos ver
no Visual Studio é aprimorado

00:07:16.580 --> 00:07:18.730
IntelliSense.

00:07:18.730 --> 00:07:22.450
Agora vamos para este método e eu
decidir que quando salvo meu treinamento,

00:07:22.450 --> 00:07:24.860
realmente deseja registrar
sua intensidade também.

00:07:26.010 --> 00:07:30.380
Agora quando chego até esta parte
onde eu estou fazendo os dados reais,

00:07:30.380 --> 00:07:34.830
Eu sei que tenho algum método
em algum lugar que tem a ver com

00:07:34.830 --> 00:07:35.890
intensidade.

00:07:35.890 --> 00:07:37.840
Assim começar a digitar,

00:07:37.840 --> 00:07:42.910
Eu agora pode contar com o IntelliSense para
Localize o método que desejo para mim.

00:07:42.910 --> 00:07:45.000
Algo novo no Visual Studio 2017 de,

00:07:45.000 --> 00:07:49.660
Você perceberá isso é
ícone de bandeja inferior.

00:07:49.660 --> 00:07:53.150
E o que isso permite que você faça
Na verdade, é filtrar o IntelliSense

00:07:53.150 --> 00:07:54.180
por categoria.

00:07:54.180 --> 00:07:57.300
Assim você pode ver que pode filtrar meu
lista de conclusão tenha somente locais

00:07:57.300 --> 00:07:58.540
e os parâmetros.

00:07:58.540 --> 00:08:04.415
Ou só têm propriedades, campos,
métodos, interfaces, etc.

00:08:04.415 --> 00:08:08.038
E há muito intuitiva
atalho de teclado associado

00:08:08.038 --> 00:08:09.180
com todos esses recursos.

00:08:10.400 --> 00:08:13.884
Sei que quero apenas observar
métodos, de forma que eu possa filtrar por meio de métodos.

00:08:13.884 --> 00:08:17.883
E claro pode ver que
Provavelmente, é GetWorkoutIntensity

00:08:17.883 --> 00:08:19.699
o método que desejo aqui.

00:08:21.460 --> 00:08:24.905
Você também pode perceber que estamos
adicionado o IntelliSense realce,

00:08:24.905 --> 00:08:28.805
onde estamos realmente negrito a pesquisa
prazo dentro de sua lista de conclusão, então

00:08:28.805 --> 00:08:31.091
Você sabe por que as coisas
são sugeridos para você.

00:08:32.893 --> 00:08:36.487
Portanto, vou adicionar isso, vou
para colocar no meu parâmetro de treinamento.

00:08:36.487 --> 00:08:39.568
E pronto,
Agora eu atualizou esse método

00:08:39.568 --> 00:08:42.910
incluir a intensidade
Quando salvo Meus exercícios físicos.

00:08:44.450 --> 00:08:47.240
Esse construtor padrão que
que estávamos trabalhando anteriormente,

00:08:47.240 --> 00:08:50.510
foi em minha mente e eu não
realmente esquecido sobre ele ainda.

00:08:50.510 --> 00:08:53.960
Algo que eu possa fazer
para navegar de volta para ele,

00:08:53.960 --> 00:08:58.618
é possível pressionar Ctrl + T ou
o que é chamado de ir a todos.

00:08:58.618 --> 00:09:00.020
Pressionando Ctrl + T

00:09:00.020 --> 00:09:05.450
Agora posso navegar para qualquer arquivo,
tipo, membro ou declaração de símbolo.

00:09:05.450 --> 00:09:09.850
Por exemplo, sei que foi
um construtor para o instrutor e isso

00:09:09.850 --> 00:09:11.630
Posso digitar isso.

00:09:11.630 --> 00:09:17.230
Você também notará que esse é um
lista de todos os arquivos, tipos, membro

00:09:17.230 --> 00:09:21.840
símbolos que eu realmente pode filtrar
Esses pressionada por categoria também.

00:09:21.840 --> 00:09:25.080
Portanto, se eu quero ver arquivos,
Pressione o ícone.

00:09:25.080 --> 00:09:28.290
Se eu quiser ver tipos,
Pressione o ícone.

00:09:28.290 --> 00:09:30.980
Se quero ver símbolos, etc.

00:09:30.980 --> 00:09:35.732
Também pode alterar o escopo da minha
pesquisa no documento atual ou

00:09:35.732 --> 00:09:37.230
para itens externos.

00:09:38.930 --> 00:09:43.710
Portanto, aqui eu sei que eu realmente quero
para navegar para o tipo de instrutor e

00:09:43.710 --> 00:09:45.310
Pode automaticamente coloquei isso aqui.

00:09:47.330 --> 00:09:48.130
Portanto, agora que estou aqui,

00:09:48.130 --> 00:09:52.570
Na verdade, quero ver com que frequência
Esse construtor é usado.

00:09:52.570 --> 00:09:56.140
Para que eu possa ver que tenho
o construtor padrão e

00:09:56.140 --> 00:09:58.210
um construtor que aceita em um objetivo.

00:09:58.210 --> 00:10:00.650
Quero saber como eles são usados.

00:10:00.650 --> 00:10:04.690
Portanto, pode haver meu tipo e
Pressione localizar todas as referências.

00:10:07.499 --> 00:10:09.590
Opa, o que aconteceu aqui?

00:10:09.590 --> 00:10:13.510
Isso não parece ser o final
referências que estão acostumados a.

00:10:13.510 --> 00:10:17.708
Não é mais referências finais
uma lista simple e simples.

00:10:17.708 --> 00:10:21.828
2017 do Visual Studio, ampliamos
Na verdade, agora coloridas todos os seus

00:10:21.828 --> 00:10:25.080
resultados de referências finais e
fizemos isso isso

00:10:25.080 --> 00:10:29.400
Você pode personalizar a hierarquia
dos resultados exibidos.

00:10:29.400 --> 00:10:33.730
Por exemplo, aqui eu tenho
o projeto e a definição.

00:10:33.730 --> 00:10:35.890
Posso alterar isso para ser
Apenas a definição.

00:10:36.920 --> 00:10:38.890
Posso alterar isso para
ser a definição e

00:10:38.890 --> 00:10:41.300
em seguida, o projeto, etc.

00:10:41.300 --> 00:10:44.544
Posso até mesmo fazer com que personalizado se
Quero clicando e

00:10:44.544 --> 00:10:46.415
alterar o agrupamento sozinho.

00:10:49.111 --> 00:10:52.815
Desejo mantê-la como
o projeto e a definição.

00:10:52.815 --> 00:10:58.275
Fazendo isso, posso ver
que o construtor padrão

00:10:58.275 --> 00:11:03.486
só é referenciado
uma vez em meu arquivo do instrutor e

00:11:03.486 --> 00:11:06.851
apenas uma vez em meu arquivo de teste.

00:11:06.851 --> 00:11:11.362
Portanto, na verdade, vou pensar
excluindo apenas essa coisa porque

00:11:11.362 --> 00:11:14.733
só usou uma vez assim
Eu realmente não preciso-lo.

00:11:14.733 --> 00:11:18.000
Novamente, eu possa verificar isso apenas
diretamente sobre isso fazendo final

00:11:18.000 --> 00:11:21.530
referências e ver novamente,
que é somente em dois lugares.

00:11:22.600 --> 00:11:26.255
Assim, estou apenas
vamos excluí-lo.

00:11:26.255 --> 00:11:29.604
E agora posso simplesmente ir
Voltar para minha classe de teste e

00:11:29.604 --> 00:11:32.779
Altere-a para usar
o construtor.

00:11:32.779 --> 00:11:33.529
E, novamente,

00:11:33.529 --> 00:11:37.279
Teste de unidade ao vivo vai
estar em execução em segundo plano para

00:11:37.279 --> 00:11:41.706
Verifique se que eu não quebrou nada
Quando excluí este construtor.

00:11:41.706 --> 00:11:44.940
E claro, todos os meus testes
ainda estiver passando apesar de mim

00:11:44.940 --> 00:11:48.050
excluindo isso e isso
Agora eu sei que com segurança excluí-lo.

00:11:49.700 --> 00:11:52.600
Espera-se que você está tão entusiasmado com
Esses novos aprimoramentos de produtividade

00:11:52.600 --> 00:11:53.900
como estamos.

00:11:53.900 --> 00:11:57.241
Não se esqueça de fazer o download
Visual Studio 2017 hoje.

00:11:57.241 --> 00:12:01.017
Além disso, certifique-se de que fazer check-out de alguns
mais interessantes vídeos no Channel 9 e

00:12:01.017 --> 00:12:04.611
continuar seu treinamento em
Microsoft Virtual Academy on-line.

