User Tools

Site Tools


collections:ood_principle_language

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
collections:ood_principle_language [2021-09-02 11:39] – old revision restored (2021-05-19 10:29) 65.21.179.175collections:ood_principle_language [2021-09-02 11:40] – old revision restored (2021-05-19 10:28) 65.21.179.175
Line 2: Line 2:
  
 General Principles: General Principles:
-  * [[principles:Murphy's Law]] (ML) +  * [[principles:Murphey's Law]] 
-  * [[principles:Keep It Simple Stupid]] (KISS) +  * [[principles:Keep It Simple Stupid]] 
-  * [[principles:More Is More Complex]] (MIMC) +  * [[principles:More Is More Complex]] 
-  * [[principles:Don't Repeat Yourself]] (DRY) +  * [[principles:Don't Repeat Yourself]] 
-  * [[principles:Generalization Principle]] (GP) +  * [[principles:Generalization Principle]] 
-  * [[principles:Rule of Explicitness]] (RoE)+  * [[principles:Uniformity Principle]] 
 +  * [[principles:Model Principle]]
  
 Modularization Principles: Modularization Principles:
-  * [[principles:Model Principle]] (MP) +  * [[principles:Information Expert]] 
-  * [[principles:High Cohesion]] (HC) +  * [[principles:High Cohesion]] 
-  * [[principles:Encapsulate The Concept That Varies]] (ECV)+  * [[principles:Encapsulate The Concept That Varies]]
  
 Module Communication Principles: Module Communication Principles:
-  * [[principles:Tell, don't Ask/Information Expert]] (TdA/IE) +  * [[principles:Low Coupling]] 
-  * [[principles:Low Coupling]] (LC) +  * [[principles:Dependency Inversion Principle]]
-  * [[principles:Dependency Inversion Principle]] (DIP)+
  
 Interface Design Principles Interface Design Principles
-  * [[principles:Easy to Use and Hard to Misuse]] (EUHM) +  * [[principles:Easy to Use and Hard to Misuse]] 
-  * [[principles:Principle of Least Surprise]] (PLS) +  * [[principles:Principle of Least Surprise]] 
-  * [[principles:Uniformity Principle]] (UP)+  * [[principles:Fail Fast]]
  
 Internal Module Design Principles Internal Module Design Principles
-  * [[principles:Information Hiding/Encapsulation]] (IH/E) +  * [[principles:Information Hiding/Encapsulation]] 
-  * [[principles:Invariant Avoidance Principle]] (IAP) +  * [[principles:Invariant Avoidance Principle]] 
-  * [[principles:Liskov Substitution Principle]] (LSP) +  * [[principles:Liskov Substitution Principle]] 
-  * [[principles:Principle of Separate Understandability]] (PSU)+  * [[principles:Zero One Infinity]] 
 +  * [[principles:Principle of Separate Understandability]]
  
 {{ :collections:ood_principle_language.png?500 |}} {{ :collections:ood_principle_language.png?500 |}}
 +:!: graphic not updated, yet :!:
  
 ===== Origin ===== ===== Origin =====
  
-{{page>resources:A Principle Language for Object-Oriented Design#reference}}+Christian Rehn//A Principle Language for Object-Oriented Design//, Master's thesis 
 ===== Further Reading ===== ===== Further Reading =====
  
 ===== Box ===== ===== Box =====
  
-^ [[collections:OOD Principle Language|{{:collections:ood_principle_language.png?nolink&260|}}]] ^                               **[[collections:OOD Principle Language]]**                           ^^^^^^ +^ [[collections:OOD Principle Language|{{:collections:ood_principle_language.png?nolink&200|}}]] ^                               **[[collections:OOD Principle Language]]**                           ^^^^^^^^^^ 
-^  :::  ^   General Principles   ^^^^^^ +^  :::  ^   General Principles   ^^^^^^^   Modularization   ^^^ 
-^  :::  |   [[principles:Murphy's Law|ML]]     [[principles:Keep It Simple Stupid|KISS]]        [[principles:More Is More Complex|MIMC]]     [[principles:Don't Repeat Yourself|DRY]]     [[principles:Generalization Principle|GP]]     [[principles:Rule of Explicitness|RoE]]      +^  :::  |   [[principles:Murphey's Law|ML]]     [[principles:Keep It Simple Stupid|KISS]]     [[principles:More Is More Complex|MIMC]]     [[principles:Don't Repeat Yourself|DRY]]     [[principles:Generalization Principle|GP]]     [[principles:Uniformity Principle|UP]]     [[principles:Model Principle|MP]]   |   [[principles:Information Expert|IE]]     [[principles:High Cohesion|HC]]     [[principles:Encapsulate the Concept that Varies|ECV]]   | 
-^  :::  ^   Modularization Principles     ^^^^^^  +^  :::  ^   Module Communication   ^^   Interface Design   ^^^   Internal Module Design   ^^^^^ 
-^  :::  |   [[principles:Model Principle|MP]]     [[principles:High Cohesion|HC]]     [[principles:Encapsulate the Concept that Varies|ECV]]   | +^  :::  |   [[principles:Low Coupling|LC]]     [[principles:Dependency Inversion Principle|DIP]]     [[principles:Easy to Use and Hard to Misuse|EUHM]]     [[principles:Principle of Least Surprise|PLS]]     [[principles:Fail Fast|FF]]     [[principles:Information Hiding/Encapsulation|IH/E]]     [[principles:Invariant Avoidance Principle|IAP]]     [[principles:Liskov Substitution Principle|LSP]]     [[principles:Zero One Infinity|ZOI]]     [[principles:Principle of Separate Understandability|PSU]]   |
-^  :::  ^   Module Communication Principles      ^^^^^^ +
-^  :::  |   [[principles:Tell, don't Ask/Information Expert|TdA/IE]]   |   [[principles:Low Coupling|LC]]     [[principles:Dependency Inversion Principle|DIP]]   |    +
-^  :::  ^   Interface Design Principles      ^^^^^^ +
-^  :::  |   [[principles:Easy to Use and Hard to Misuse|EUHM]]     [[principles:Principle of Least Surprise|PLS]]     [[principles:Uniformity Principle|UP]]   +
-^  :::  ^   Internal Module Design Principles      ^^^^^^ +
-^  :::  |   [[principles:Information Hiding/Encapsulation|IH/E]]     [[principles:Invariant Avoidance Principle|IAP]]     [[principles:Liskov Substitution Principle|LSP]]      [[principles:Principle of Separate Understandability|PSU]]   |+
  
collections/ood_principle_language.txt · Last modified: 2021-10-18 21:57 by christian