Um resumo sobre as funcionalidades mais interessantes do ASP.NET Core e o que você precisa saber para iniciar seus estudos, migração de aplicações e mudar o framework de trabalho. Esta foi uma palestra realizada no evento Codificando Night Week 2017.
Video completo com as outras palestras do dia está no link: https://www.youtube.com/watch?v=ittrKuogqG0
Info do evento: http://codificandoweek.azurewebsites.net
Padrões de Projeto - Design Patterns e Anti-Patterns
Inicie no ASP.NET Core
1. ASP.NET CORE
O que você precisa saber para iniciar voando!
CODIFICANDO NIGHT WEEK 2017
2. • MVP Microsoft
• MCP – MCTS – MCPD – MCT
• Especialista em desenvolvimento web
• Arquiteto de Soluções / Consultor Independente
• Há 15 anos de comunidade .NET
• @rodrigokono
• www.rodrigokono.net
• youtube.com/rodrigokono
Rodrigo Kono
h t t p : / / a b o u t . m e / r k o n o
8. Updates
O arquivo project.json não mais existe. Para os novos projetos com
VS2017 e o Tooling 1.0 será o .csproj
Dica: Para ter o intelisense dos pacotes ao editar o csproj no
VS2017, utilize o add-in abaixo:
17. Setando a Injeção de Dependência
No Startup, adiciona a namespace e as dependencias
No código da aplicação
• Injeção de Construtor
• Injeção de Propriedade
21. xUnit – Atributos de Classe de Teste
public classe de teste [Fact] para métodos públicos sem parâmetros
[Theory] e [InlineData] para métodos com parâmetros
22.
23. Migrando do ASP.NET para ASP.NET Core
https://github.com/aspnet/benchmarks
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware
24. Ajuda na migração para .NET Core
http://packagesearch.azurewebsites.net/
https://marketplace.visualstudio.com/items?itemName=ConnieYau.NETPortabilityAnalyzer
26. Ferramentas
Visual Studio 2015 / 2017/Mac - possui versão community
visualstudio.com/vs
Visual Studio Code - cross platform
code.visualstudio.com
Cmder – ótimo manipulador para command line
cmder.net
Omnisharp – Intelisense para editores
omnisharp.net - github.com/omnisharp
27. Referências Importantes!
Ponto de Partida
• http://dot.net
Documentação completa
• http:// docs.microsoft.com
Tudo open source no Github
• http://github.com/dotnet
• http://github.com/aspnet
• http://github.com/microsoft
Vantagens do .NET Standard:
Developers:
Mesma API para todas as plataformas
Lib Master e não um Framework
Amplitude do repositorio de trabalho. E não uma pequena ou fatiada namespace.
Plataforma:
.NET Standard pode crescer e não precisar atualizar as plataformas
Kestrel – criado pela MS e pela comunidade.
Objetivo de torna-lo leve e rápido.
Benchmark de performance é incrível - https://github.com/aspnet/benchmarks
É parte do .NET Core. (Toda aplicação .net core é console. Ao inicia-la, o server kestrel é ativado, que faz as ligações http e manipula todo o resto)
Pode se usar o IIS como proxy reverso. Para manipular coisas como hosts virtuais, logs, segurança, etc. A MS ainda recomenta o IIS para estar na frente das suas aplicações asp.net core
Publicação no IIS - https://weblog.west-wind.com/posts/2016/Jun/06/Publishing-and-Running-ASPNET-Core-Applications-with-IIS
Middleware – é um software que é montado no pipeline da aplicação para lidar com requests e responses.ASP.NET Core entrega vários middlewares como de Authentication, CORS, Routing, Static Files, etc.
Você define eles em código e não em um arquivo de configuração =)
.NET Standard - https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md