Apresentação sobre novidades do .NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0. Palestra realizada durante o .NET Conf Local 2017 - São Paulo, evento promovido pelo .NET SP em parceria com o SENAI em 23/09/2017 na cidade de São Paulo - SP.
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
.NET Core 2.0, .NET Standard 2.0 e ASP.NET Core 2.0: uma visão geral
1. Learn. Imagine. Build.
.NET Conf
.NET Core 2.0, .NET Standard 2.0 e
ASP.NET Core 2.0: uma visão geral
Renato Groffe
Microsoft MVP, MTAC
2. Renato Groffe
◦ Microsoft Most Valuable Professional (MVP)
◦ Multi-Plataform Technical Audience Contributor (MTAC)
◦ Mais de 15 anos de experiência na área de Tecnologia
◦ Autor Técnico e Palestrante
4. Agenda
◦ .NET Core e do ASP.NET Core: visão geral
◦ .NET Standard
◦ Novidades do .NET Core 2.0 e do ASP.NET Core 2.0
◦ Alguns exemplos
5.
6. .NET Core – Primórdios
◦ Chamados inicialmente de ASP.NET
vNext/.NET vNext e depois ASP.NET 5/.NET 5
◦ Primeiros releases em 2014
◦ Rebatizado como .NET Core 1.0 e ASP.NET Core
1.0 em Janeiro/2016
◦ Um novo framework, completamente reescrito
7. ASP.NET Core e .NET Core – Visão geral
◦Multiplataforma: Windows, Linux e
Mac
◦Atualmente na versão 2.0
(Agosto/2017)
8. ASP.NET Core – Open source
◦ Projeto hospedado no GitHub
https://github.com/aspnet/Home
9. ASP.NET Core – Sites, serviços?
◦ Uma única arquitetura, com a unificação dos modelos MVC e Web API
10. ASP.NET Core – Cloud computing
◦Otimizado para a nuvem (cloud-ready)
11. ASP.NET Core – Estrutura dos projetos
◦Arquivos de configuração nos formato XML e JSON
(por conta do MSBuild)
◦.csproj ao invés de project.json → Visual Studio 2017
12. ASP.NET Core – Arquitetura
◦ Mais enxuta e modular, baseada
no modelo OWIN (projeto
Katana)
◦ Mecanismo nativo para injeção
de dependências
◦ Middlewares
◦ Fim do System.Web
15. ASP.NET Core – Front-end
◦Gerenciamento automatizado de pacotes client-side
◦ Bower → instalação e restauração
◦ Gulp → automação de tarefas (sintaxe JavaScript)
◦ npm → ambiente de execução
16. ASP.NET Core – Arquivos Razor
◦ View Components
◦ Tag Helpers
17. ASP.NET Core – Ferramentas Microsoft
◦Visual Studio 2017
◦Visual Studio Code (Windows, Linux e Mac)
◦Visual Studio for Mac
18. ASP.NET Core – Editores em Linux
Projeto OmniSharp:
◦ Atom
◦ Brackets
◦ Sublime
◦ Emacs
◦ Vim
19. ASP.NET Core – JetBrains Rider
◦Cross-plataform
◦IDE construída utilizando as tecnologias
IntelliJ e ReSharper
◦Suporte a .NET e .NET Core
20. .NET Core e Visual Studio Code
◦ Utilização de linhas de comando
◦ Criação de novos projetos via .NET Core
Command-Line Interface (CLI)
21. .NET CLI – Tipos de aplicações possíveis
◦ASP.NET Core Web Apps
◦ASP.NET Core Web APIs
◦Aplicações Console
◦Bibliotecas (Packages)
◦Projetos de Testes (MS Test, xUnit)
22. .NET Core – Algumas considerações
◦Muitos frameworks populares ainda não
contam com uma versão estável para o
.NET Core (NHibernate a caminho, por
exemplo)
◦Não confundir o .NET Core com o .NET Full
(.NET Framework 4.6/4.7, compatível
apenas com ambientes Windows)
23. .NET Core – Algumas considerações
Lançamentos de Agosto/2017:
◦ .NET Core 2.0
◦ ASP.NET Core 2.0
◦ Entity Framework Core 2.0
◦ .NET Standard 2.0.
◦ Visual Studio 2017 Update 15.3
24.
25.
26.
27.
28.
29. Novidades do .NET Core 2.0
◦Suporte ao C# 7.1
◦Live Unit Testing a partir do Update 15.3
do Visual Studio 2017
◦Suporte a VB.NET (alguns templates)
30. Novidades do ASP.NET Core 2.0
Razor Pages
◦Dispensam o uso de Controllers
◦Nova estrutura de projetos
31. Novidades do ASP.NET Core 2.0
Templates para Single-Page Applications (SPAs)
Angular React React + Redux
32. Novidades do ASP.NET Core 2.0
O metapackage Microsoft.AspnetCore.All
◦Agrupa todas as referências a packages do
ASP.NET Core
◦Melhor gerenciamento das dependências
de uma aplicação
33. Novidades do ASP.NET Core 2.0
Mudanças na classe Startup
◦Novo construtor
◦Dependências de IConfiguration resolvidas
automaticamente, sem configurações
adicionais
◦Ausência do parâmetro ILoggerFactory no
método Configure
34. Novidades do ASP.NET Core 2.0
Restore automático após criação de
projetos
Configurações de web host