APIs na nuvem com Azure e ASP.NET Core - Azure Weekend 2016

Preview:

Citation preview

ASP.NET Core e AzureDESENVOLVENDO UMA API REST PARA A NUVEM

Renato Groffe◦ Microsoft Most Valuable Professional

◦ Microsoft Technical Audience Contributor (MTAC)

◦ Mais de 15 anos de experiência na área de Tecnologia

◦ Articulista e Palestrante

Agenda

◦ Web APIs: alguns conceitos básicos

◦ Quais tecnologias utilizar para uma API na nuvem?

◦ Exemplos práticos

Web APIs: alguns conceitos básicos

O que é uma Web API?◦ Componente de software acessível de forma remota

◦ Emprega o padrão HTTP para comunicação

◦ Integração entre sistemas de diferentes plataformas

◦ Reaproveitamento de código

◦ Utlização do modelo REST

O modelo REST◦ Baseado no conceito de recurso e no uso de requisições HTTP

◦ Recurso → elemento (conjunto de dados) representando um item de negócio

◦ Utilização de JSON ou XML para representação dos dados

◦ RESTful Web Services → serviços que seguem esta arquitetura

REST – Representação Esquemática

Por que a nuvem?◦ Priorizar negócio, ao invés de somente a tecnologia

◦ Escalabilidade para atender a demandas crescentes

◦ Aumento de produtividade, eficiência e redução de custos

Economia

EscalabilidadeVelocidade

Quais tecnologias utilizar para uma API na nuvem?

ASP.NET Core◦ Multiplataforma (Windows, Linux, Mac)

◦ Completamente reescrito

◦ Arquitetura mais enxuta e modular

◦ Mecanismo nativo para injeção de dependências

◦ Middlewares

◦ Modelo único para MVC e Web API

SQL Azure◦ Serviço de banco de dados na nuvem

◦ Similar ao SQL Server on-premise

◦ Alta disponibilidade e escalabilidade

◦ Segurança

◦ Compatibilidade com as principais plataformas de desenvolvimento

Entity Framework Core◦ Mapeamento objeto-relacional (ORM)

◦ Nova versão multiplataforma

◦ Compatibilidade com .NET Framework Full, .NET Core, Xamarin e Universal Apps

◦ SQL Server, PostgreSQL, Redis, Azure Table Storage

Azure App Service◦ Hospedagem de aplicações

◦ Suporte a múltiplas plataformas

◦ Alta disponibilidade, escalabilidade e load balancing

◦ Integração com Git, GitHub, VSTS

Exemplo prático

Descrição◦ Implementar uma API REST no ASP.NET

Core, a fim de consultar as cotações de moedas estrangeiras

Tecnologias que serão utilizadas◦ Visual Studio 2015 Update 3

◦ ASP.NET Core

◦ Entity Framework Core

◦ SQL Azure

◦ Azure App Service

Estrutura da aplicação

Perguntas?FONTES:

https://github.com/renatogroffe/APIREST_AzureWeekend

Referências

◦ ASP.NET Core: Guia de Sobrevivênciahttp://bit.ly/aspnet-core-guia-sobrevivencia

◦ ASP.NET Core – Vídeos (Canal .NET)http://bit.ly/aspnet-core-canal-dotnet

Contatos◦ Facebook: https://www.facebook.com/renatogroff

◦ Site: http://renatogroffe.net/

◦ Canal .NET: https://www.facebook.com/canaldotnet

◦ LinkedIn: http://br.linkedin.com/in/renatogroffe

◦ GitHub: https://github.com/renatogroffe

Obrigado!