User Tools

Site Tools


principles:don_t_repeat_yourself

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
principles:don_t_repeat_yourself [2013-06-19 12:32]
christian [Description Status]
principles:don_t_repeat_yourself [2015-06-26 15:45]
207.107.205.22 [Strategies]
Line 9: Line 9:
  
   * [[contexts:​Object-Oriented Design]]   * [[contexts:​Object-Oriented Design]]
 +  * [[contexts:​Implementation]]
 ===== Principle Statement ===== ===== Principle Statement =====
  
Line 28: Line 28:
  
   * Add a new invokable module (a function, a method, a class, etc.) instead of duplicating code   * Add a new invokable module (a function, a method, a class, etc.) instead of duplicating code
 +  * Factor out a common base class
   * Use code generation when information has to be represented in multiple forms   * Use code generation when information has to be represented in multiple forms
   * Use polymorphism to avoid repeatedly enumerating a set of possible solutions in if or switch statements   * Use polymorphism to avoid repeatedly enumerating a set of possible solutions in if or switch statements
Line 90: Line 91:
   * [[http://​programmer.97things.oreilly.com/​wiki/​index.php/​Don'​t_Repeat_Yourself|97things:​ Don'​t_Repeat_Yourself]]   * [[http://​programmer.97things.oreilly.com/​wiki/​index.php/​Don'​t_Repeat_Yourself|97things:​ Don'​t_Repeat_Yourself]]
  
 +===== Discussion =====
 +
 +Discuss this wiki article and the principle on the corresponding [[talk:​principles:​Don'​t Repeat Yourself|talk page]].
principles/don_t_repeat_yourself.txt · Last modified: 2015-06-26 15:45 by 207.107.205.22