Difference between revisions of "Simplicity Above Patterns"

From Open Pattern Repository for Online Learning Systems
Jump to navigation Jump to search
(Created patlet for pattern)
 
(Added source)
Line 5: Line 5:
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|contributor=  
|contributor=  
|source=  Köppe (2011)<ref>Patlet first published in Köppe, C. (2011). [http://koeppe.nl/publications/PatternsForPatternTeaching_ACM_Plop11.pdf A pattern language for teaching design patterns (part 2)]. In ''Proceedings of the 18th Conference on Pattern Languages of Programs''. ACM:New York.</ref>; Köppe (2013)<ref name="Koppe2013">Pattern published in Köppe, C. (2013). [http://link.springer.com/chapter/10.1007/978-3-642-38676-3_2 A Pattern Language for Teaching Design Patterns.] In ''Transactions on Pattern Languages of Programming III'' (pp. 24-54). Springer Berlin Heidelberg.</ref>
|source=  Köppe (2011)<ref>Pattern first published in Köppe, C. (2011). [http://dl.acm.org/citation.cfm?id=2396718 A pattern language for teaching design patterns (part 1)]. In ''Proceedings of the 16th European Conference on Pattern Languages of Programs'' (p. 2). ACM:New York.</ref><ref>Patlet published in Köppe, C. (2011). [http://koeppe.nl/publications/PatternsForPatternTeaching_ACM_Plop11.pdf A pattern language for teaching design patterns (part 2)]. In ''Proceedings of the 18th Conference on Pattern Languages of Programs''. ACM:New York.</ref>; Köppe (2013)<ref name="Koppe2013">Pattern also published in Köppe, C. (2013). [http://link.springer.com/chapter/10.1007/978-3-642-38676-3_2 A Pattern Language for Teaching Design Patterns.] In ''Transactions on Pattern Languages of Programming III'' (pp. 24-54). Springer Berlin Heidelberg.</ref>
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->
|domain= <!-- Learning domain the design pattern belongs to (e.g., General, Math, Algebra) -->
|domain= <!-- Learning domain the design pattern belongs to (e.g., General, Math, Algebra) -->

Revision as of 08:15, 30 January 2017


Simplicity Above Patterns
Contributors
Last modification January 30, 2017
Source Köppe (2011)[1][2]; Köppe (2013)[3]
Pattern formats OPR Alexandrian
Usability
Learning domain
Stakeholders

Also Known As: Keep It Simple


Keep It Simple-alx.png


You want to make sure that the students do not add unnecessary complexity through blindly applying design patterns.

***

While learning design patterns students want to show that they understand design patterns by implementing as many patterns as possible. Most often this adds unnecessary complexity without adding value.


***

Therefore: Motivate the students to always give a rationale for all design patterns they have used. Make sure that they only apply a design pattern when they have not only examined the design problem at hand, but also the consequences of applying the pattern. The application of the pattern should add value to the overall design.


This pattern is considered as true invariant for the teaching of patterns of all domains, as the tendency of applying patterns excessively after being introduced to them can be found in nearly all domains.

References

  1. Pattern first published in Köppe, C. (2011). A pattern language for teaching design patterns (part 1). In Proceedings of the 16th European Conference on Pattern Languages of Programs (p. 2). ACM:New York.
  2. Patlet published in Köppe, C. (2011). A pattern language for teaching design patterns (part 2). In Proceedings of the 18th Conference on Pattern Languages of Programs. ACM:New York.
  3. Pattern also published in Köppe, C. (2013). A Pattern Language for Teaching Design Patterns. In Transactions on Pattern Languages of Programming III (pp. 24-54). Springer Berlin Heidelberg.