“DRY” stands for “Don’t Repeat Yourself” and it means that we shouldn’t have multiple places where pieces of business knowledge are dened. Also, DRY is commonly considered a rule of avoiding code duplication.

This principle says that “every piece of knowledge must have a single, unambiguous, authoritative representation within a system” (according to “The Pragmatic Programmer” by Andrew Hunt and David Thomas, the book in which this principle was originally dened). To understand it we must rst know what a “piece of knowledge is”.

Piece of knowledge can be either:

  • An algorithm
  • A business functionality or policy dened for the application