O nome da classe de protocolo é exclusivo
O protocolo é utilizado em pelo menos uma colaboração
A descrição resumida do protocolo captura a finalidade do protocolo e resume rapidamente a função que ele desempenha no sistema
O protocolo representa um único conjunto de responsabilidades coerentes
Os sinais no protocolo estão todos diretamente relacionados ao cumprimento da função do protocolo no sistema
Eles não são simplesmente os sinais utilizados para comunicação entre duas cápsulas |
Os finais foram escolhidos da maneira mais geral possível e, ao mesmo tempo, ainda conseguem manter a clareza
Por exemplo, no caso em que vários sinais 'Out' requerem confirmação, um único sinal 'Ack' foi utilizado como
resposta. |
O protocolo reflete uma finalidade específica no sistema
Nos casos em que um protocolo tem uma combinação de aspectos (por exemplo, sinais de administração e processamento de
chamadas), ele foi dividido em várias classes de protocolo independentes. |
Os protocolos foram definidos de acordo com o que o usuário deseja ou precisa saber, no lugar de o que o provedor sabe
A diretriz que determina o lado da interface a ser conjugada é aplicada consistentemente.
Os protocolos assimétricos foram definidos a partir da perspectiva do cliente (usuário) para reduzir a necessidade de
conjugar interfaces. |
Classes de protocolo assimétricas são nomeadas para indicar claramente sua direção
Um bom exemplo de nome é 'ClientResourceInterface' |
|