Introdução aos antipadrões

Você está visualizando a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
info

Esta seção aborda antipadrões comuns observados como parte dos proxies de API implantados na plataforma Apigee Edge.

A boa notícia é que cada um desses antipadrões pode ser identificado e retificado claramente com as práticas recomendadas adequadas. Desse modo, as APIs implantadas no Edge cumprem a finalidade pretendida e são mais eficientes.

Resumo dos antipadrões

Na tabela a seguir, listamos os antipadrões desta seção:

Categoria Antipadrões
Antipadrões da política
Antipadrões de desempenho
Antipadrões genéricos
Antipadrões de back-end
Antipadrões do Edge para nuvem privada

Fazer o download do e-book de antipadrões

Além dos links acima, é possível fazer o download dos antipadrões no formato de e-book:

O que é um antipadrão?

A Wikipédia define um antipadrão de software como:

Em engenharia de software, um antipadrão é um padrão que pode ser comumente usado, mas é ineficiente e/ou contraprodutivo, na prática.

Para simplificar, um antipadrão é algo que o software permite que o "usuário" faça, mas que pode ter um impacto funcional, operacional ou de desempenho adverso.

Por exemplo, considere a "classe/objeto pai" de nível onipotente.

Na terminologia de objetos, uma classe pai é aquela que controla muitas classes em um determinado aplicativo.

Por exemplo, considere um aplicativo com a seguinte árvore de referência:

Figura 1: classe pai

Conforme ilustrado na imagem, a classe pai usa e refere-se a muitas classes.

O framework em que o aplicativo foi desenvolvido não impede a criação desse tipo de classe, mas isso apresenta muitas desvantagens, sendo as principais:

  • Difícil de manter
  • Ponto único de falha quando o aplicativo é executado

Consequentemente, evite criar esse tipo de classe. Trata-se de um antipadrão.

Público-alvo

Esta seção é mais voltada aos desenvolvedores do Apigee Edge conforme avançam no ciclo de vida de criação e desenvolvimento de proxies de API para serviços. O ideal é que ela seja usada como um guia de referência durante o ciclo de vida de desenvolvimento da API e a solução de problemas.