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

PPTX
.NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem...
PPT
Extração de Dados na Web com MongoDB e Selenium - TDC 2018 - São Paulo
PPTX
Desenvolvendo Aplicações .NET Core em Linux - CEUNSP - Outubro-2019
PPT
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
PPTX
Desenvolvendo Aplicações com .NET Core - Recode - Dezembro-2019
PPTX
SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019
PPTX
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Julho-2019
PPTX
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019
.NET, Microsoft Azure e Tecnologias Open Source - Americana Tech Conf - Novem...
Extração de Dados na Web com MongoDB e Selenium - TDC 2018 - São Paulo
Desenvolvendo Aplicações .NET Core em Linux - CEUNSP - Outubro-2019
Banco de Dados - Docker Compose + Bancos NoSQL: descomplicando a montagem de ...
Desenvolvendo Aplicações com .NET Core - Recode - Dezembro-2019
SQL Server no Desenvolvimento Web - Database Dev Night #1 - Junho-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Julho-2019
Desenvolvimento de APIs REST Multiplataforma com ASP.NET Core - Setembro-2019

Mais procurados (20)

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

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

Mais de Renato Groff (20)

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

Último (7)

PPTX
Mapeamento de Objeto para Tabela Relacional
PPTX
Curso de Windows 11 resumido na prática.pptx
PDF
apresentacao introducao computacao ead.pdf
DOC
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
PDF
Dos requisitos ao código: como criar código rastreável em PHP
DOC
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
PDF
Evolução em código: algoritmos genéticos com PHP
Mapeamento de Objeto para Tabela Relacional
Curso de Windows 11 resumido na prática.pptx
apresentacao introducao computacao ead.pdf
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
Dos requisitos ao código: como criar código rastreável em PHP
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
Evolução em código: algoritmos genéticos com PHP

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