SlideShare uma empresa Scribd logo
Globalcode – Open4education
APIs Multiplataforma com o ASP.NET Core:
Presente e Futuro
Renato Groffe
Microsoft MVP, MTAC
Globalcode – Open4educationhttps://medium.com/@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
Um dos organizadores do Canal .NET e do
.NET SP
Renato Groffe
https://medium.com/@renato.groffe/
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Contatos
https://medium.com/@renato.groffe/
/renatogroffe /in/renatogroffe
/canaldotnet
/renatogroffe/renatogroff
/canaldotnet
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Agenda
.NET Core e ASP.NET Core hoje
.NET Core 2.1 e ASP.NET Core 2.1: visão geral das novidades
Um pouco sobre o .NET Core 2.2 e o ASP.NET Core 2.2
Alguns exemplos práticos de implementação e consumo de APIs
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
.NET Core e ASP.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
Open source
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Multiplataforma: Windows, Linux e
Mac
Suporte ao .NET Standard
Suporte a containers Docker
Atualmente na versão 2.1
(Maio/2018);
Versão 2.2 a caminho
.NET Core e ASP.NET Core – Visão Geral
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Visual Studio 2017
Visual Studio Code
(Windows, Linux e Mac)
Visual Studio for Mac
.NET Core – Ferramentas Microsoft
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Utilização de linhas de comando
Criação de novos projetos via .NET
Core Command-Line Interface (CLI)
.NET Core e Visual Studio Code
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
.NET Core 2.1 e ASP.NET Core 2.1
Lançamento oficial no final de Maio/2018,
juntamente com o Entity Framework Core 2.1
Suporte do Visual Studio 2017 Update 15.7.x,
Visual Studio Code e Visual Studio for Mac
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Microsoft.AspNetCore.App
Novo metapackage default
Recomendável o seu uso ao invés de
Microsoft.AspNetCore.All
Reduz o número de dependências de terceiros
em relação ao metapackage anterior
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Compatibility Version
Possibilidade de manter os comportamentos de
versões anteriores, por mais que se empregue
um release mais atual
Acionado no método ConfigureServices da
classe Startup
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Compatibility Version
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Suporte a HTTPS
Habilitado por default com o ASP.NET Core 2.1
Uso de um certificado de desenvolvimento
Redirecionamento automático de HTTP para
HTTPS
Uso do protocolo HSTS (HTTP Strict Transport
Security), que determina o acesso a uma
aplicação em produção somente via HTTPS
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Suporte a HTTPS
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Docker + ASP.NET Core 2.1
Geração de imagens menores
Suporte a Alpine Linux
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Docker + ASP.NET Core 2.1
Antes com o ASP.NET Core 2.0:
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Docker + ASP.NET Core 2.1
ASP.NET Core 2.1:
ASP.NET Core 2.1 com Alpine:
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
IHttpClientFactory
Configuração de HttpClients de
forma centralizada
Acesso aos clients via injeção de
dependências
Named e Typed clientes
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
IHttpClientFactory - Exemplo
GitHub:
github.com/renatogroffe/ASPNETCore2.1_IHttpClientFactory
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
O atributo ApiController
Atributo associado a um Controller
APIs com um código mais limpo
Geração de erro automático do tipo 400 ao
encontrar problemas de validação
Capacidade de inferir tipos complexos sem o uso
de atributos como [FromBody]
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Antes de ApiController
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Com ApiController
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
ApiController - Exemplo
GitHub:
github.com/renatogroffe/ASPNETCore2.1_ApiController
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
O tipo ActionResult<T>
Simplifica a codificação de
instruções de retorno em APIs
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Antes de ActionResult<T>
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Com ActionResult<T>
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
ActionResult<T> - Exemplo
GitHub:
github.com/renatogroffe/MongoDB-DotNetCore2.1
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
.NET Core 2.2 e ASP.NET Core 2.2
Lançamento do Preview 3 em Outubro/2018
Suporte do Visual Studio 2017 Update 15.9
(Preview) e Visual Studio Code
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Novidades da versão 2.2 - APIs
HTTP REPL
REPL = read–eval–print loop → espécie de language
shell para teste de expressões de uma linguagem
Dependência do Swagger previamente configurado
Opção rápida para teste de APIs
API Conventions
Maior simplificidade na documentação com
Swagger
Globalcode – Open4educationhttps://medium.com/@renato.groffe/
Obrigado!!!

Mais conteúdo relacionado

Mais procurados (20)

PPTX
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Renato Groff
 
PPTX
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Renato Groff
 
PPTX
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Renato Groff
 
PPTX
Docker: Introdução e Primeiros Passos - CEUNSP - Outubro-2018
Renato Groff
 
PPTX
.NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - ....
Renato Groff
 
PPT
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Renato Groff
 
PPTX
Boas práticas na implementação de APIs REST com ASP.NET Core - Agosto-2019
Renato Groff
 
PPTX
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...
Renato Groff
 
PPTX
.NET Core 3.0 e ASP.NET Core 3.0: principais novidades - FCamara - Agosto-2019
Renato Groff
 
PPTX
SQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São Paulo
Renato Groff
 
PPTX
7 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - .NET SP - ...
Renato Groff
 
PPTX
Novidades do C# 7.0 - Julho-2017
Renato Groff
 
PPTX
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
Renato Groff
 
PPTX
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Renato Groff
 
PPTX
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Renato Groff
 
PPTX
.NET Core e C# 7.0 - InterCon 2016
Renato Groff
 
PPTX
C# 7.0 e .NET Core - Canal .NET Dev Week
Renato Groff
 
PPTX
Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour...
Renato Groff
 
PPTX
Middlewares + ASP.NET Core: incrementando e acrescentando comportamentos em a...
Renato Groff
 
PPTX
.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie
Renato Groff
 
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Renato Groff
 
Desenvolvimento multiplataforma em .NET Core utilizando SQL Server 2019, Dock...
Renato Groff
 
Docker + Bancos de Dados: descomplicando a montagem de ambientes de Desenvolv...
Renato Groff
 
Docker: Introdução e Primeiros Passos - CEUNSP - Outubro-2018
Renato Groff
 
.NET e ASP.NET Core 2.2, .NET Core 3, Visual Studio 2019: uma visão geral - ....
Renato Groff
 
Banco de Dados - Docker Compose + Bancos Relacionais: descomplicando a montag...
Renato Groff
 
Boas práticas na implementação de APIs REST com ASP.NET Core - Agosto-2019
Renato Groff
 
Docker no Back e no Front - um exemplo com .NET Core e Angular - Campus Party...
Renato Groff
 
.NET Core 3.0 e ASP.NET Core 3.0: principais novidades - FCamara - Agosto-2019
Renato Groff
 
SQL Server 2017 para Desenvolvedores de Software - TDC 2018 - São Paulo
Renato Groff
 
7 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - .NET SP - ...
Renato Groff
 
Novidades do C# 7.0 - Julho-2017
Renato Groff
 
SQL Server 2017 para Desenvolvedores de Software - SQL Saturday 715
Renato Groff
 
Boas práticas na implementação de APIs REST com ASP.NET Core - Outubro-2019
Renato Groff
 
Tecnologias Microsoft em Linux: .NET Core, SQL Server e Visual Studio Code - ...
Renato Groff
 
.NET Core e C# 7.0 - InterCon 2016
Renato Groff
 
C# 7.0 e .NET Core - Canal .NET Dev Week
Renato Groff
 
Desenvolvimento Web multiplataforma com ASP.NET Core 2.2 e Docker - Open Sour...
Renato Groff
 
Middlewares + ASP.NET Core: incrementando e acrescentando comportamentos em a...
Renato Groff
 
.NET: passado, presente e futuro | Semana FCI 2020 - Mackenzie
Renato Groff
 

Semelhante a APIs Multiplataforma com o ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - São José dos Campos-SP - Novembro/2018 (20)

PPT
.NET Core e ASP.NET Core: Presente e Futuro - .NET SP - Novembro/2018
Renato Groff
 
PPT
.NET Core e ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - Campinas...
Renato Groff
 
PPT
.NET Core e ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - .NET SP ...
Renato Groff
 
PPT
Novidades do ASP.NET Core 2.1 - TDC 2018 - São Paulo
Renato Groff
 
PDF
TDC2018SP | Trilha .Net - Novidades do ASP.NET Core 2.1
tdc-globalcode
 
PPTX
ASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - Março
Renato Groff
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Pointer - Janeiro-...
Renato Groff
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Pointer - Janeiro-2018
Renato Groffe
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Nerdzão Day #3 - No...
Renato Groff
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET SP - Novembro...
Renato Groff
 
PPTX
Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Arqui...
Renato Groff
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Renato Groff
 
PPT
.NET Core 3.0 e ASP.NET Core 3.0 Deep Dive: conhecendo as principais novidade...
Renato Groff
 
PPTX
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Renato Groff
 
PPTX
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
Renato Groff
 
PDF
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
tdc-globalcode
 
PPT
.NET Core 3.0 e ASP.NET Core 3.0 : principais novidades - TDC 2019 - Porto Al...
Renato Groff
 
PPTX
ASP.NET vNext no .NET Architects Days 2014
Giovanni Bassi
 
PPTX
Implementando APIs multiplataforma com o ASP.NET Core - Campus Party Brasil 2018
Renato Groffe
 
PPTX
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Renato Groff
 
.NET Core e ASP.NET Core: Presente e Futuro - .NET SP - Novembro/2018
Renato Groff
 
.NET Core e ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - Campinas...
Renato Groff
 
.NET Core e ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - .NET SP ...
Renato Groff
 
Novidades do ASP.NET Core 2.1 - TDC 2018 - São Paulo
Renato Groff
 
TDC2018SP | Trilha .Net - Novidades do ASP.NET Core 2.1
tdc-globalcode
 
ASP.NET Core 3.1: Desenvolvimento de APIs Multiplataforma - Março
Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Pointer - Janeiro-...
Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Pointer - Janeiro-2018
Renato Groffe
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Nerdzão Day #3 - No...
Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET SP - Novembro...
Renato Groff
 
Dicas para simplificar o desenvolvimento de APIs REST em ASP.NET Core - Arqui...
Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - .NET Conf Local 201...
Renato Groff
 
.NET Core 3.0 e ASP.NET Core 3.0 Deep Dive: conhecendo as principais novidade...
Renato Groff
 
Implementando APIs multiplataforma com ASP.NET Core 2.0 - Developers-SP - Out...
Renato Groff
 
10 dicas úteis para simplificar o desenvolvimento em ASP.NET Core - ASP.NET C...
Renato Groff
 
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
tdc-globalcode
 
.NET Core 3.0 e ASP.NET Core 3.0 : principais novidades - TDC 2019 - Porto Al...
Renato Groff
 
ASP.NET vNext no .NET Architects Days 2014
Giovanni Bassi
 
Implementando APIs multiplataforma com o ASP.NET Core - Campus Party Brasil 2018
Renato Groffe
 
Microsoft e Open Source: expandindo as fronteiras no Desenvolvimento de Softw...
Renato Groff
 
Anúncio

Mais de Renato Groff (20)

PPTX
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...
Renato Groff
 
PPTX
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020
Renato Groff
 
PPTX
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...
Renato Groff
 
PPTX
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...
Renato Groff
 
PPTX
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
Renato Groff
 
PPTX
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...
Renato Groff
 
PPTX
Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf...
Renato Groff
 
PPTX
Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV...
Renato Groff
 
PPTX
Docker: dicas e truques para o dia a dia | MVPConf Latam 2020
Renato Groff
 
PPTX
Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020
Renato Groff
 
PPTX
.NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |...
Renato Groff
 
PPTX
Aplicações Distribuídas com .NET | TDC Recife Online 2020
Renato Groff
 
PPTX
Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020
Renato Groff
 
PPTX
Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ...
Renato Groff
 
PPTX
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Renato Groff
 
PPTX
Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ...
Renato Groff
 
PPTX
Kubernetes na Nuvem | Minicurso Gratuito - Azure na Prática
Renato Groff
 
PPTX
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020
Renato Groff
 
PPTX
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
Renato Groff
 
PPTX
.NET 5, C# 9.0 e outras novidades | TDC São Paulo Online 2020
Renato Groff
 
Microsoft Azure role-based certifications valem a pena? | Interop Day Edição ...
Renato Groff
 
Kubernetes: dicas e truques para o dia a dia | Azure Experts - Novembro-2020
Renato Groff
 
Como o Microsoft Azure pode melhorar o desenvolvimento de seu Back-End? | Dev...
Renato Groff
 
Como avançar na Power Platform com Azure Functions e Logic Apps | MVPConf Lat...
Renato Groff
 
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
Renato Groff
 
A evolução da plataforma .NET: passado, presente e futuro | Baixada NERD - No...
Renato Groff
 
Polly: aplicações .NET resilientes e um melhor tratamento de falhas | MVPConf...
Renato Groff
 
Containers no Azure: Docker, Kubernetes e suas diferentes possibilidades | MV...
Renato Groff
 
Docker: dicas e truques para o dia a dia | MVPConf Latam 2020
Renato Groff
 
Simplificando a montagem de ambientes de Dev+Testes com Docker | DEVDAY 2020
Renato Groff
 
.NET Core + Serverless: Desenvolvimento Multiplataforma com Azure Functions |...
Renato Groff
 
Aplicações Distribuídas com .NET | TDC Recife Online 2020
Renato Groff
 
Novidades do .NET 5 e ASP.NET 5 | Visual Studio Summit 2020
Renato Groff
 
Serverless + Integrações com BDs: Azure Functions e Logic Apps - SQLSaturday ...
Renato Groff
 
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Renato Groff
 
Docker: visão geral e primeiros passos | Fatec Praia Grande - Semana Tecnológ...
Renato Groff
 
Kubernetes na Nuvem | Minicurso Gratuito - Azure na Prática
Renato Groff
 
Kubernetes de ponta a ponta: do Pod ao Deployment Automatizado | Setembro-2020
Renato Groff
 
Sobrevoando os serviços do Azure | TDC São Paulo Online 2020
Renato Groff
 
.NET 5, C# 9.0 e outras novidades | TDC São Paulo Online 2020
Renato Groff
 
Anúncio

APIs Multiplataforma com o ASP.NET Core: Presente e Futuro - .NET Conf Local 2018 - São José dos Campos-SP - Novembro/2018