ConstructiCat Logo
CodeBust.
Browse section ▾

Antipatterns.

Common solutions to recurring problems that look helpful but create more trouble than they solve.

Architectural Patterns Mascot
Action at a Distance

Action at a distance is an antipattern in which code in one part of a program silently changes the behavior of a distant, unrelated part.

001
Refactoring Mascot
Boat Anchor

A boat anchor is code or hardware kept in a system although it no longer serves any purpose, confusing maintainers and slowing builds.

002
Refactoring Mascot
Cargo Cult Programming

Cargo cult programming is the ritual inclusion of code, patterns or practices copied without understanding why they are needed — or whether they are.

003
Design Patterns Mascot
Circular Dependency

A circular dependency is an antipattern where two or more modules depend on each other, so none of them can be built, tested or reused alone.

004
Code Smells Mascot
Tight Coupling

Tight coupling is an antipattern in which modules depend so heavily on each other’s internals that a change in one forces changes in the others.

005
Antipatterns Mascot
Error Hiding

Error hiding is an antipattern in which code catches an error or exception and carries on without logging, handling or reporting it.

006
Design Patterns Mascot
God Object

A god object is an antipattern: a single class that knows or does too much and centralizes most of a program’s data and behavior.

007
Refactoring Mascot
Gold Plating

Gold plating is adding features or polish beyond the agreed requirements, which adds cost and risk although the customer never asked for it.

008
Code Smells Mascot
Golden Hammer

The golden hammer is the habit of applying one familiar tool, language or design to every problem, including problems it fits poorly.

009
Antipatterns Mascot
Hard Coding

Hard coding embeds data such as paths, credentials or rates directly in source code, so changing them requires editing and rebuilding the program.

010
Antipatterns Mascot
Inner-Platform Effect

The inner-platform effect is building a system so configurable that it becomes a poor replica of the platform it runs on, such as a database inside a database.

011
Architectural Patterns Mascot
Interface Bloat

Interface bloat is an antipattern in which one interface piles up so many operations that every client depends on methods it never uses.

012
Refactoring Mascot
Lava Flow

Lava flow is an antipattern in which obscure, half-finished code hardens in production because nobody understands it well enough to remove it.

013
Code Smells Mascot
Magic Number

A magic number is an unexplained literal in source code whose meaning the reader has to guess; naming it as a constant makes code clearer and safer to change.

014
Antipatterns Mascot
Poltergeist

A poltergeist is a short-lived, stateless class that exists only to call methods of another class, adding indirection without adding behavior.

015
Code Smells Mascot
Sequential Coupling

Sequential coupling is an antipattern in which a class only works when callers invoke its methods in one specific, unstated order.

016
Design Patterns Mascot
Spaghetti Code

Spaghetti code has tangled, unstructured control flow — jumps, nested conditionals and flags — that makes a program hard to follow and maintain.

017