API REST
O CRUD completo e a fronteira entre o modelo armazenado e o modelo exposto.
Criação de APIs REST com Spring Boot
Um controller Spring Boot se escreve em poucos minutos. É por isso que tantas APIs compartilham o mesmo defeito: foram escritas rápido, funcionam, e no dia em que é preciso adicionar um campo interno a uma tabela, descobre-se que um aplicativo mobile publicado no ano passado vai recebê-lo.
O ponto de virada de uma API quase nunca é técnico. É contratual. A partir do momento em que um cliente consome suas respostas, o formato dessas respostas se torna um compromisso que você não pode mais alterar unilateralmente. A pergunta que decide o resto é, portanto, simples: quem decide o formato do JSON? Se a resposta for "a tabela", então cada decisão de schema passa a ser uma decisão de API, tomada por alguém que não estava pensando nisso.
Esta lição constrói o CRUD completo do catálogo de biblio-api e estabelece, no caminho, a única fronteira que importa: o modelo exposto é um objeto à parte, escrito de propósito para o mundo externo, independente do modelo armazenado. Todo o resto — códigos de status, paginação, versionamento — decorre dessa decisão.
Comentários
Os comentários são alimentados pelo GitHub Discussions
Conecte-se com o GitHub para participar da discussão