User Tools

Site Tools


Experience Reuse

This wiki is essentially about experience reuse. Some developers made some experience, gained some knowledge, and got expertise. Then they codified this knowledge as patterns, anti-patterns, principles and the like. This wiki collects these and describes and examines them in a structured way.

The following table shows the different forms of codified experience:

Form Description Notable Collections List
Principles Rules of thumb telling good solutions from bad solutions OOD-PL, SOLID, GRASP, … list
Patterns Known good solutions GoF, POSA1, … list
Anti-Patterns Known bad solutions Fowler, … list
Refactorings Procedures for transforming solutions structurally (typically from bad to good) Fowler, … list
Terms Any terms used in software development list
Non-Principles Rules which look like principles but are not principles in the sense discussed here. list

Currently this wiki has a strong focus on principles. In the future the wiki will extend in order to describe also the other forms and more than that: interconnect them.

  • The advantages and disadvantages of (anti-)patterns can be described using principles
  • Refactorings are cures for anti-patterns
  • Refactorings may be used to transform a solution in a way that adheres more to a certain principle
  • Refactorings may lead to certain patterns
about/experience_reuse.txt · Last modified: 2013-08-20 11:07 by christian