Introdução aos antipadrões

Você está vendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
informações

Esta seção é sobre antipadrões comuns que são 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. Consequentemente, as APIs implantadas no Edge atenderiam à finalidade pretendida e teriam melhor desempenho.

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
Edge para antipadrões de 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.

Simplificando, um antipadrão é algo que o software permite que o "usuário" faça, mas é algo 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 Deus.

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 atende melhor aos desenvolvedores do Apigee Edge à medida que eles avançam no ciclo de vida de criação e desenvolvimento de proxies de API para os 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.