API

Conceito

O conceito de API nada mais é do que uma forma de comunicação entre sistemas.

Elas permitem a integração entre dois sistemas, em que um deles fornece informações e serviços que podem ser utilizados pelo outro, sem a necessidade de o sistema que consome a API conhecer detalhes de implementação do software.

Tipos de API e suas aplicações

Simple object access protocol (SOAP)

SOAP é um protocolo padrão projetado originalmente para possibilitar a comunicação entre aplicações desenvolvidas em diferentes linguagens e plataformas.

Como se trata de um protocolo, ele impõe regras integradas que aumentam sua complexidade e sobrecarga, desacelerando o tempo de carregamento das páginas.

Exemplo de uso: Comunicação entre um sistema de emissão de notas e a Sefaz (autorizadora de notas).

Representational State Transfer (REST)

REST é um protocolo de comunicação é “sem estado”, em outras palavras: as interações não dependem de requisições prévias.

Foi criada para ser usada em aplicações interligadas por rede, usando prioritariamente o HTTP.

As APIs REST trabalham levando as informações de uma ferramenta para outra e são bastante eficientes nesse processo. Além disso, elas são mais rápidas de criar, porque dispensam um processamento longo.

Exemplo de uso: WhatsApp Web e ferramentas de chat terceirizadas.

Resumo

Simplificando, o REST acessa os dados enquanto o SOAP executa operações por meio de um conjunto mais padronizado de mensagens. Ainda assim, na maioria dos casos, tanto REST como o SOAP podem ser usados para obter o mesmo resultado (e ambos são infinitamente escaláveis).

Entenda mais no vídeo: https://www.youtube.com/watch?v=3LHSyha0xN0


Dúvidas - 21/05


Dúvidas API


  • 01. Luiz Cláudio Theodoro: Pode dizer exatamente o que essa API do SEFAZ, faz?
    • Essa API carimba a nota fazendo validação e autorização da NF


  • 02. Luiz Cláudio Theodoro: Pode explicar melhor o StateLess, com exemplos?


  • 03. Ricky Willian Ferraz: O Postman funciona da mesma forma que o SOAP?
    • O Postman é um "padronizador" de API, permitindo um desenvolvimento sobre APIs SOAP, REST e Graphql.


  • 04. Rafael Ribeiro de Sousa: Graphql seria uma alternativa a REST?
    • Sim Rafael, o Graphql é uma alternativa a APIs do tipo REST, criada pela Facebook, que pela discussão presente nos fóruns, facilita as consultas de informação, segue citação:

"o GraphQL lhe permite realizar buscas declarativas onde um cliente especifica exatamente os dados de que ele precisa da API. Então agora ao invés de termos vários e vários endpoints o GraphQL expõe apenas um e responde com eficiência e precisão os dados solicitados."


Dúvidas Algoritmos/Compiladores


Sugestão de vídeo: https://www.youtube.com/watch?v=nj22l1gIll8
  • 01. Matheus Faria: Qual a diferença entre algoritmo e linguagem de programação, tipo C/C++?


  • 02. Igor Augusto: Os algoritmos influenciam na propagação das fake news? principalmente em redes sociais, nas quais há muita informação, mas pouco conhecimento


Microserviços

Arquivo:Microservices.pdf

Sugestão de vídeo 1: https://www.youtube.com/watch?v=CKL3fV5UR8w
Sugestão de vídeo 2: https://www.youtube.com/watch?v=j3XufmvEMiM

Dúvidas


  • 01. Matheus Faria: O que é uma comunicação assincrona?


  • 02. Ricky Willian Ferraz: Você citou que os microsserviços tem a vantagem de serem fáceis de testar, poderia explicar melhor pq é fácil?


  • 03. Paulo Giovany: Vale à pena utilizar microsserviços em sistemas pequenos?


  • 04. Matheus Faria: Quando devo escolher um microsserviço e quando não usar?


  • 05. Otavio Malta: Microserviço é o mesmo que web service?