API Flashcards

1
Q

O que é uma API?

A

API(Application programming service) é uma coleção de métodos/recursos disponibilizados por um serviço para interação indireta

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

o que faz uma API?

A

Ela fornece métodos e recursos que podem ser utilizados por sistemas diferentes, ou entre o mesmo sistema, pode ser fornecido para desenvolvedores, fornecendo serviços para cliente. etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Por que utilizar API?

A

A API ja fornece código pronto, testado e seguro. Por conta disso é utilizado para ajudar a vida de desenvolvedores, usuários e serviços

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Exemplos de API

A

Existem várias API com finalidades e targets diferentes. Um exemplo de API é a do Java, que vai fornecer métodos e recursos para o desenvolvedor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Exemplos de API do java

A

Java.io -> vai fornecer métodos de input e output
Java.applet -> fornece pequenas aplicações java
java.math -> fornece métodos para facilitar calculos e operações matemáticas
java.security -> fornece para diversas área interfaces de segurança, criptografia, PKI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

O que é REST?

A

REpresentional State Transfer -> REST

REST é uma arquitetura que define algumas regras de comunicação entre sistemas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Precisa-se entender o funcionamento por trás da API para utilizá-la?

A

Não, não precisamos. Uma das vantagens e características da API é justamente o seu uso sem precisar saber o que ocorre por de baixo dos panos. Onde a complexidade e a lógica não precisa ser aparente ao usuário final

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Por que devemos usar APIs REST

A

APIs restful possuem diversos motivos para serem utilizados:

  • Padrão de mercado: O padrão rest é o padrão de criação de API mais utilizado atualmente
  • Simplicidade e facilidade de uso: as apis restful são baseadas nos padrões http, URI
    Flexibilidade, desempenho(é leve e eficiente)
    Suporte para JSON/XML
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quais são as características da API REST?

A

Arquitetura Cliente-Servidor: Separação clara entre cliente e servidor, permitindo a evolução independente de cada parte.

Estado Representacional: O servidor não mantém estado da sessão do cliente entre requisições. Cada requisição do cliente deve conter todas as informações necessárias.

Interface Uniforme: Utiliza URIs para identificar recursos e métodos HTTP (GET, POST, PUT, DELETE) para manipular esses recursos.

Sistema sem Estado (Stateless): Cada requisição do cliente deve conter todas as informações necessárias para ser entendida pelo servidor, sem depender de requisições anteriores.

Cacheabilidade: As respostas do servidor devem ser explicitamente marcadas como cacheáveis ou não-cacheáveis para melhorar a performance.

Uso de Hiperlinks (HATEOAS): As representações dos recursos devem conter links para permitir a descoberta e navegação para recursos relacionados.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Quais as vantagens da API REST?

A

As 3 característica do padrão REST são o seguinte:

  • Boas práticas: O padrão rest possui padrões bem definidos
  • Comunicação entre sistemas: O padrão arquitetural REST tem como foco a comunicação entre os sistemas, e com isso a independencias do front e do back.
  • Padrão de linguagem: Seguir o padrão de nomenclaturas para identificar recursos e suas operações
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

A interface se torna mais flexível e reutilizável

A

Uma APIRestful bem definida, vai resultar em um back end e front-end que não se encontram, onde somente a API vai ter como intermédio. Essa separação clara vai poder resultar em uma utilização de outros sistemas, cliente do back end ou front end.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Padrão REST e o protocolo HTTP

A

O padrão REST comunica muito bem com o protocolo http/https. Por conta disso o padrão rest é bastante utilizado para APIs que fazem comunicação via http/https,

Isso por conta do http ter arquitetura cliente-servidor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

O QUE COMPÕE O REST?

A

Comunicação Cliente-Servidor:

O cliente e o servidor devem ser separados, e cada um deve ser independente da implementação do outro. Isso permite que cada componente seja modificado, atualizado ou substituído sem afetar o outro.
Estado Representacional:

O servidor contém todo o estado necessário para manipular uma solicitação. Isso significa que todas as informações necessárias para entender e processar uma solicitação devem estar contidas na própria solicitação, e não mantidas no servidor entre solicitações.
Interface Uniforme:

O padrão REST define uma interface uniforme entre o cliente e o servidor, composta por quatro restrições:
Identificação de recursos: Recursos são identificados por URIs (Uniform Resource Identifiers).
Manipulação de recursos através de representações: Os recursos são manipulados através da manipulação de suas representações.
Mensagens auto-explicativas: As mensagens de solicitação e resposta devem ser autoexplicativas.
Hiperlink como motor do estado da aplicação (HATEOAS): As representações dos recursos devem conter links para permitir a descoberta e navegação para recursos relacionados.
Operações CRUD com Métodos HTTP:

O REST mapeia as operações CRUD (Create, Read, Update, Delete) para os métodos HTTP:
GET: Para recuperar recursos.
POST: Para criar novos recursos.
PUT ou PATCH: Para atualizar recursos existentes.
DELETE: Para excluir recursos.
Sem Estado (Stateless):

O servidor não mantém nenhum estado da sessão do cliente entre solicitações. Cada solicitação do cliente deve conter todas as informações necessárias para processar a solicitação.
Cacheável:

As respostas do servidor devem ser explicitamente marcadas como cacheáveis ou não-cacheáveis. Isso permite que o cliente armazene em cache as respostas e reduza a latência e a carga do servidor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly