User Tools

Site Tools


start

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
start [2012-11-29 17:13] – [Principle Collections and Principle Languages] corr christianstart [2013-05-19 22:05] – external edit 127.0.0.1
Line 1: Line 1:
 ====== Principles Wiki ====== ====== Principles Wiki ======
  
-===== Principles and Principle Languages =====+===== The Idea =====
  
-The purpose of this wiki is to collect software development principles. Just like common solution schemes to recurring problems are documented using patterns, common assessment rules telling good solutions from bad onescan be described using principles. So principles are another form of experience reuse. There are dozens and maybe hundreds of such principles, some of which are described, examined, discussed, and interconnected in this wiki.+The purpose of this wiki is to collect software development principles. Just like common solution schemes to recurring problems are documented using patterns, common assessment rules telling good solutions from bad ones can be described using principles. So principles are another form of experience reuse. There are dozens and maybe hundreds of such principles, some of which are described, examined, discussed, and interconnected in this wiki.
  
 The following pages describe the idea in more detail: The following pages describe the idea in more detail:
   * [[about:Principles]]   * [[about:Principles]]
   * [[about:Principle Languages]]   * [[about:Principle Languages]]
 +  * [[about:Benefits]]
   * [[about:Using Principles in the Plan-Driven World]]   * [[about:Using Principles in the Plan-Driven World]]
   * [[about:Using Principles in the Agile World]]   * [[about:Using Principles in the Agile World]]
Line 16: Line 17:
  
 This wiki is about [[glossary:principles]]. You may have a look at the [[principles:|full list]] or start with one of the following: This wiki is about [[glossary:principles]]. You may have a look at the [[principles:|full list]] or start with one of the following:
-  * [[principles:Keep It SimpleStupid]] (KISS)+  * [[principles:Keep It Simple Stupid]]
   * [[principles:Generalization Principle]]   * [[principles:Generalization Principle]]
-  * [[principles:Single Responsibility Principle]] (SRP) 
   * [[principles:Model Principle]]   * [[principles:Model Principle]]
 +  * [[principles:Information Hiding/Encapsulation]]
   * [[principles:Low Coupling]]   * [[principles:Low Coupling]]
   * [[principles:High Cohesion]]   * [[principles:High Cohesion]]
-  * [[principles:Don't Repeat Yourself]] (DRY)+  * [[principles:Don't Repeat Yourself]] 
 +  * [[principles:Easy to Use and Hard to Misuse]]
   * [[principles:|...]]   * [[principles:|...]]
  
Line 31: Line 33:
   * [[collections:OOD Principle Language]]   * [[collections:OOD Principle Language]]
  
-  * [[collections:SOLID]], [[collections:GRASP]], [[collections:|...]]+  * [[collections:SOLID]], [[collections:GRASP|GRASP]], [[collections:|...]] 
  
 ===== Contexts ===== ===== Contexts =====
Line 38: Line 41:
  
   * [[contexts:Object-Oriented Design]]   * [[contexts:Object-Oriented Design]]
- 
-===== Glossary ===== 
-Some terms shall be used consistently throughout the wiki. The [[glossary:]] lists and defines them:[[glossary:Principle]], [[glossary:principle language]], [[glossary:module]], [[glossary:|...]] 
  
  
 ===== About the Wiki itself ===== ===== About the Wiki itself =====
  
-This [[wiki:]] uses the [[wiki:dokuwiki|DokuWiki]] software. For information on how the wiki markup (some variation of markdown) works, see the [[wiki:syntax]] page.+This [[wiki:]] uses the [[wiki:dokuwiki|DokuWiki]] software. For information on how the wiki markup (some variation of markdown) works, see the [[wiki:syntax]] page. The [[wiki:wish list]] lists principles that have not been described yet in this wiki. 
 + 
 +Some terms shall be used consistently throughout the wiki. The [[glossary:]] lists and defines them:[[glossary:Principle]], [[glossary:principle language]], [[glossary:module]], [[glossary:|...]]
start.txt · Last modified: 2018-06-24 10:59 by christian