Avoiding Repetition

  • Authors:
  • Martin Fowler

  • Affiliations:
  • -

  • Venue:
  • IEEE Software
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software design is not easy-not easy to do, teach, or evaluate. Much of software education these days is about products and APIs, yet much of these are transient, whereas good design is eternal, if only we could figure out what good design is. The author has been struck by one of the underlying principles that leads to better designs: remove duplication. The principle is simple: say anything in your program only once. Stated blandly like that, it hardly bears saying. Yet identifying and removing repetition can lead to many interesting consequences. The author looks at a simple case of subroutine calls. He considers the benefits of design patterns