API first é uma abordagem de desenvolvimento de software onde o contrato de definição da API é feito primeiro que o código.
Aplicar o "API first" sem IA é um trabalho chato e acho que demora mais do que sentar na reunião e fazer algumas anotações sobre os recursos e suas interações na mão, depois codar a API e disponibilizar para a outra equipe (se for o caso) e fazer alguma correção. Achei realmente muito cansativo, trabalhoso e demorado. Em uma empresa que trabalhei, para APIs externas era usado esse conceito, mas não era o time de dev do projeto (vulgo squad) que fazia, era uma equipe só pra isso, tinha que abrir chamado e passar o JSON do recurso, os endpoints e tal (meio como vou fazer abaixo com o prompt da IA).
O motivo principal de fazerem isso na empresa para APIs externas ao invés de simplesmente configurar o Swagger no projeto com Spring Boot e ele ir tomando forma acredito era pra disponibilizar o Swagger para clientes externos, uma vez que o Swagger do projeto não ficaria exposto em produção, então eles tinha um endereço de documentação onde expunham o .yaml gerado para clientes externos acessarem. Pra equipes internas não sei se valeria o trabalho.
Com a IA é molesa, mas na mão, vi em um vídeo (que vou deixar no final) e achei um inferno! Então vou deixar o prompt aqui de exemplo para usar sempre que for preciso. Claro que no momento de gerar pode (e deve) passar mais informações, como campos obrigatórios, se usa autenticação, qual tipo de autenticação, url de autenticação, tudo isso é importante para a documentação da API!
Cria pra mim o .yaml do swagger para API first seguindo a seguinte especificação:
openapi: 3.1.0
title: pedidos
description: DOC API pedidos
servers: https://localhost:8080/pedidos-api
versione no padrão: /api/v1/recurso
Recurso /pedidos
GET - 200 OK
GET {id} - 200 OK ou 404 Not Found
POST - 201 Created ou 400 Bad Request
PUT {id} - 202 Accepted ou 404 Not Found
DELETE {id} - 202 Accepted ou 404 Not Found
JSON objeto:
{
"idPedido": 160253,
"idCliente": 123658,
"produtos": [{
"idProduto": 6548,
"descricao": "Livro Java - Como programar",
"quantidade": 1,
"valorUnitario": 250.00
}]
}
O link do vídeo que ensina a fazer a documentação na mão é o: https://www.youtube.com/watch?v=cksLbT8nDB4
Nenhum comentário:
Postar um comentário