User Tools

Site Tools


about:experience_reuse

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