Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Michi Henning escreveu um artigo na ACM Communications de Maio sobre um assunto recorrente neste blog aqui: a importância de levar em conta o usuário na heurística para o bom desenho de uma API.
As principais sugestões de boas práticas para o design de API´s dadas no artigo são:
- Uma API deve prover funcionalidades suficientes para que o chamador possa realizar suas tarefas;
- Uma API deve ser mínima, sem impor inconvenientes indevidos ao chamador;
- APIs não podem ser concebidas sem uma compreensão do contexto de uso;
- APIs de propósito geral devem ser “ policy-free”; APIs de propósito especial devem ser “ policy-rich”; (aqui entendendo-se política como restrições de parâmetros, da ordem de chamadas, valores defaults, etc.)
- A API deve ser projetada pela perspectiva do chamador;
- Boas APIs não passam sua responsabilidade para o usuário;
- APIs devem ser documentadas antes de implementadas;
- Boas APIs devem ser ergonômicas;
Vale a leitura.
Três comentários (meus):
- Estas regras devem ser levadas em consideração também quando no design de classes, frameworks e interfaces com o usuário;
- Creio que todas estas regras derivam de uma inicial: “A API deve ser projetada pela perspectiva do chamador “. As demais são decorrentes.
- Uma impressão minha: arquitetos e designers costumam pensar em si mesmos como os usuários de uma API. Eis o grande erro;
Abraços
Comments
Anonymous
April 26, 2009
PingBack from http://asp-net-hosting.simplynetdev.com/ergonomia-no-design-e-arquitetura-de-software/Anonymous
April 30, 2009
O último post do time do Entity Framework é bem interessante no contexto dos assuntos discutidos neste