Middle+
Quais são os princípios de uma interface única?
sobes.tech IA
Resposta da IA
Princípios de uma interface unificada (também conhecidos como princípios de design de API RESTful, embora aplicáveis a outros sistemas distribuídos):
- Identificação de recursos: Cada parte da informação que pode ser endereçada deve ter um identificador único. O cliente interage com os recursos usando esses identificadores.
- Manipulação de recursos através de representações: O cliente recebe uma representação do recurso (por exemplo, em formato JSON ou XML) e pode alterar o estado do recurso enviando a representação modificada de volta ao servidor.
- Mensagens auto-descritivas: Cada mensagem entre cliente e servidor deve conter informações suficientes para sua interpretação completa. O cliente não deve depender de informações externas ou do estado da sessão no servidor.
- Hipermídia como motor de estado da aplicação (HATEOAS - Hypermedia As The Engine Of Application State): O servidor deve fornecer hiperligações (links) nas respostas que indiquem as ações possíveis seguintes ou recursos relacionados. O cliente navega pela aplicação seguindo esses links, em vez de confiar em URLs fixas ou lógica pré-definida.
- Arquitetura cliente-servidor: Divisão clara de responsabilidades entre o cliente (que gerencia a interface de usuário e inicia solicitações) e o servidor (que armazena dados e processa solicitações). Essa separação melhora a escalabilidade e a portabilidade do cliente.
- Sem estado (Stateless): Cada solicitação do cliente ao servidor deve conter todas as informações necessárias para que o servidor a entenda e processe. O servidor não mantém informações do estado da sessão do cliente entre solicitações. Isso aumenta a escalabilidade e a resistência a falhas.
Seguir esses princípios ajuda a criar sistemas distribuídos escaláveis, flexíveis e fáceis de manter.