Upgrade to Pro — share decks privately, control downloads, hide ads and more …

API Throwdown

API Throwdown

Concepts and comparison between the following API styles: RPC, REST and GraphQL.

Avatar for mateuscoelho2009

mateuscoelho2009

February 06, 2020

Other Decks in Programming

Transcript

  1. API Throwdown: RPC vs REST vs GraphQL Mateus Coelho -

    Software Engineer at Loft Uma nova experiência na compra e venda de imóveis 1
  2. Loft — Junho.2019 Afinal, qual o melhor estilo de API?

    Uma nova experiência na compra e venda de imóveis 2
  3. Devemos Considerar Alguns Pontos de Design 4 1.Acoplamento 2.Chattiness +

    verbosidade 3.Complexidade do Cliente 4.Complexidade de Desenvolvimento 5.Cacheamento 6.Facilidade de Descoberta 7.Versionamento
  4. Sobre o que é essa talk? 6 Permuta Playbook 1.Levantar

    conceitos sobre essas tecnologias 2.Prática 3.Framework simples
  5. Loft — Junho.2019 RPC Unidade fundamental: Função Uma nova experiência

    na compra e venda de imóveis 7 "Chame uma função em um servidor"
  6. RPC 9 Direto e Simples Suas vantagens e desvantagens Alto

    Acoplamento Pros Cons Fácil de Criar Funções Fácil de Criar Funções Alta Performance Difícil Descoberta
  7. Loft — Junho.2019 REST Unidade fundamental: Recursos Uma nova experiência

    na compra e venda de imóveis 10 "Aqui estão alguns recursos e o que você pode fazer com eles"
  8. Roy Fielding 12 "A REST API should be entered with

    no prior knowledge beyond the initial URI (bookmark) and a set of standardized media types (...)"
  9. REST 13 Baixo Acoplamento Suas vantagens e desvantagens Padrão Difícil

    de Estabelecer Pros Cons Fácil Descoberta Under/Over-fetching Resistente à Modificações Muitos Roundtrips
  10. Loft — Junho.2019 GraphQL Unidade fundamental: Query Uma nova experiência

    na compra e venda de imóveis 14 "Peça exatamente o que você quer"
  11. GraphQL 16 Baixo Overhead Suas vantagens e desvantagens Difícil Desenvolvimento

    Pros Cons Fácil Descoberta Cacheamento Schemas Performance das Queries
  12. Loft — Junho.2019 Afinal, qual o melhor estilo de API?

    Uma nova experiência na compra e venda de imóveis 17
  13. Loft — Junho.2019 Afinal, qual o melhor estilo de API

    para determinada tarefa? Uma nova experiência na compra e venda de imóveis 18
  14. Qual o melhor estilo de API para determinada aplicação? 19

    REST RPC GraphQL 1.Clientes variados 2.Foco nos recursos 3.Facilidade de descoberta 1.Alta performance 2.Orientado à ações 3.Pouca conversação 1.Dados com “formato de grafo” 2.Otimizados para alta latência
  15. Obrigadx Uma nova experiência na compra e venda de imóveis

    21 Source Code: https://github.com/mateuscoelho2009/nest-api-styles