Introduction to antipatterns

You're viewingApigee andApigee hybrid documentation.
View Apigee Edge documentation.

This section is about common antipatterns that arise when API proxies are deployedon Apigee.

What is an antipattern?

Anantipattern is a software design practice that is ineffective or counterproductive—in other words, the opposite of a "best practice." To put it another way, an antipattern is something that the software allows you to do, but that may have an adverse functional or performance impact.

For example, consider the omnipotent-sounding "God Class/Object". In objected oriented programming, agod class is a class that controls too many classes for a given application, as illustrated by the following reference tree:

TBD
Figure 1: God class

As the image illustrates, the god class uses and references too many classes.

The framework on which the application was developed does not prevent the creation of such aclass, but it has many disadvantages, the primary ones being:

  • Hard to maintain
  • Single point of failure when the application runs

Consequently, such a class is an antipattern that you should avoid creating.

The good news is that you can identify these antipatterns and rectify them withappropriate best practices, which will make the APIs you deploy on Apigee best serve their intendedpurpose.

Summary of antipatterns

The following table lists some common API antipatterns:

CategoryAntipatterns
Policy antipatterns
Generic antipatterns
Backend antipatterns

Download antipatterns eBook

In addition to the links above, you can also download the antipatterns in eBook format:

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-02-19 UTC.