Logo Passei Direto
Buscar

Ferramentas de estudo

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Resumo de Estudo: APIs com C# e 
Orientação a Objetos 
Nível Universitário | ASP.NET Core 
1. O que é uma API? (A Base) 
Definição: API (Application Programming Interface) é um conjunto de rotinas e padrões que 
permite a comunicação entre diferentes sistemas. 
● Analogia da POO: Imagine uma API como uma Interface gigante. Ela define o que 
você pode fazer (o contrato) sem mostrar como é feito lá dentro (encapsulamento). 
● Cenário Real: Um aplicativo de celular (Frontend) pedindo dados de usuários para um 
servidor (Backend em C#). 
💡 O conceito chave: A API é o "garçom". Você (cliente) faz o pedido (Request), o garçom 
leva à cozinha (Servidor/Banco) e traz o prato (Response). 
2. Conceitos Principais 
Tipos Comuns 
● RESTful: O padrão mais usado na web. Baseado em recursos (URLs) e verbos HTTP. 
Leve e escalável. 
● SOAP: Mais antigo, baseado em XML. Mais rígido, menos usado em projetos novos de 
C#. 
A Conexão com POO 
● Controllers: São classes C# que herdam de ControllerBase. Gerenciam a entrada e 
saída. 
● Models/DTOs: Classes simples (POCOs) que representam os dados. 
○ Dica de Ouro: Nunca exponha sua entidade de banco de dados diretamente. Use 
DTOs (Data Transfer Objects) para desacoplar. 
● Interfaces: Usadas para Injeção de Dependência (ex: IUsuarioService), permitindo 
testabilidade e baixo acoplamento. 
Sugestão Visual: 
3. Os Verbos HTTP (O Coração do REST) 
Essencial para provas! Associe o Verbo à Ação. 
Verbo HTTP Ação (CRUD) O que faz? Status Sucesso 
Típico 
GET Read Busca dados. Não 200 OK 
altera nada no 
servidor. 
POST Create Cria um novo recurso. 201 Created 
PUT Update Atualiza um recurso 
completo. 
204 No Content / 200 
OK 
DELETE Delete Remove um recurso. 204 No Content 
4. Criando APIs em C# (ASP.NET Core) 
Estrutura Básica de um Controller 
[ApiController] // Define comportamento de API (validações auto, etc) 
[Route("api/[controller]")] // Define a rota base: api/produtos 
public class ProdutosController : ControllerBase 
{ 
 // Exemplo de GET 
 [HttpGet("{id}")] 
 public IActionResult GetPorId(int id) 
 { 
 // Lógica de busca... 
 var produto = new { Id = id, Nome = "Notebook" }; 
 
 if (produto == null) return NotFound(); // Retorna 404 
 
 return Ok(produto); // Retorna 200 com JSON 
 } 
} 
 
Pontos Importantes no Código 
1. Attributes ([HttpGet]): Metadados que ensinam o ASP.NET como rotear o pedido. 
2. IActionResult: Interface de retorno que permite enviar tanto dados (JSON) quanto 
status HTTP (404, 200, 500). 
Sugestão Visual: 
5. Consumindo APIs (O Cliente C#) 
Para conversar com outras APIs, usamos a classe HttpClient. 
Boas Práticas de Consumo 
● Assincronismo (async/await): Obrigatório. Requisições web são lentas. Se não usar 
await, você trava a aplicação. 
● Serialização: O processo de transformar Objeto C# ↔ JSON Textual. 
○ JsonSerializer.Serialize(obj) (Ida) 
○ JsonSerializer.Deserialize(json) (Volta) 
public async Task BuscarUsuarioGithub(string user) 
{ 
 using var client = new HttpClient(); 
 
 // Chamada assíncrona 
 var response = await 
client.GetAsync($"[https://api.github.com/users/](https://api.github.com/users/){user}"); 
 
 // Verifica se deu 200 OK 
 response.EnsureSuccessStatusCode(); 
 
 var json = await response.Content.ReadAsStringAsync(); 
 return JsonSerializer.Deserialize(json); 
} 
 
6. O que Cai na Prova (Checklist Rápido) 
● [ ] Status Codes: 
○ 2xx: Sucesso. 
○ 4xx: Erro do Cliente (ex: 400 Bad Request, 401 Não Autorizado, 404 Não 
Encontrado). 
○ 5xx: Erro do Servidor (ex: 500 Internal Server Error - o código quebrou). 
● Injeção de Dependência: Entender que o Controller recebe o Service pelo construtor. 
● Stateless: O servidor não "lembra" do cliente entre requisições. Toda requisição deve 
conter todas as infos necessárias (ex: Token). 
7. Quadro Resumo: Conceitos Finais 
Conceito Definição Curta 
Endpoint O endereço final (URL) onde um serviço pode 
ser acessado. 
Payload/Body O corpo da requisição (os dados JSON 
enviados num POST). 
Swagger Ferramenta que gera uma página web 
automática para testar sua API. 
JSON JavaScript Object Notation. O formato padrão 
de texto para troca de dados. 
 
	 Resumo de Estudo: APIs com C# e Orientação a Objetos 
	1. O que é uma API? (A Base) 
	2. Conceitos Principais 
	Tipos Comuns 
	A Conexão com POO 
	Sugestão Visual: 
	3. Os Verbos HTTP (O Coração do REST) 
	4. Criando APIs em C# (ASP.NET Core) 
	Estrutura Básica de um Controller 
	Pontos Importantes no Código 
	Sugestão Visual: 
	5. Consumindo APIs (O Cliente C#) 
	Boas Práticas de Consumo 
	6. O que Cai na Prova (Checklist Rápido) 
	7. Quadro Resumo: Conceitos Finais

Mais conteúdos dessa disciplina