The first half of the title refers to the influential “Design Patterns: Elements of Reusable Object-Oriented Software”. The second half refers to “AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis”. In either case, selected best-/worst-practices in software architecture are examined. We present a digest.

Patterns

Kamran Ahmed made a summary for humans

Antipatterns

Not-invented-here syndrome

Poul-Henning Kamp in DOI:10.1145/2556647.2556655 with a nice overview of :

handbarrow (2 people) -- wheelbarrow (front wheel) -- Chinese wheelbarrow (center wheel)

He concludes with this beautiful caveat:

Blindly deciding that IT be substituted for humans is unenlightenend. […] The right thing to do is ask, as a Chinese engineer did 2,000 years ago, “If we’re going to put a wheel on this thing, where is the best place to put it?” And to realize that two questions were asked.

Links

  • SourceMaking guides you through design patterns, antipatterns, refactoring and UML
  • Huge alphabetic list of AntiPatterns