patterns:parameter_object
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
patterns:parameter_object [2020-10-12 16:49] – old revision restored (2013-08-04 15:20) 159.69.186.191 | patterns:parameter_object [2021-09-02 12:18] – old revision restored (2021-05-11 22:42) 65.21.179.175 | ||
---|---|---|---|
Line 18: | Line 18: | ||
* Often there are methods which take a large number of input parameters. This makes using them cumbersome and the code less readable. See [[anti-patterns: | * Often there are methods which take a large number of input parameters. This makes using them cumbersome and the code less readable. See [[anti-patterns: | ||
* A second problem is the evolution of method signatures. There are circumstances where there is the chance that in the future further parameters will be added without all the users of the method needing the new parameter. [[glossary: | * A second problem is the evolution of method signatures. There are circumstances where there is the chance that in the future further parameters will be added without all the users of the method needing the new parameter. [[glossary: | ||
+ | ===== Structure ===== | ||
- | ===== Solution | + | ===== Variations |
- | + | ||
- | + | ||
- | ==== Structure ==== | + | |
- | + | ||
- | ==== Dynamics ==== | + | |
- | + | ||
- | ==== Implementation Hints ==== | + | |
- | + | ||
- | ==== Variations ==== | + | |
===== Origin ===== | ===== Origin ===== | ||
{{page> | {{page> | ||
- | |||
===== Advantages ===== | ===== Advantages ===== | ||
Line 45: | Line 35: | ||
* [[principles: | * [[principles: | ||
* [[principles: | * [[principles: | ||
- | |||
===== Relations to Other Patterns ===== | ===== Relations to Other Patterns ===== | ||
- | ==== Generalizations ==== | + | ===== Pattern Collections |
- | + | ||
- | ==== Specializations ==== | + | |
- | + | ||
- | * [[Selector Object]] | + | |
- | * [[Curried Object]] | + | |
- | + | ||
- | ==== Alternative Patterns ==== | + | |
- | + | ||
- | ==== Complementary Patterns ==== | + | |
- | + | ||
- | ==== Pattern Collections ==== | + | |
{{page> | {{page> | ||
- | |||
- | |||
===== Examples ===== | ===== Examples ===== | ||
Line 78: | Line 54: | ||
On the other hand the parameter object pattern is already applied here. The parameters lpProcessAttributes, | On the other hand the parameter object pattern is already applied here. The parameters lpProcessAttributes, | ||
- | |||
===== Description Status ===== | ===== Description Status ===== | ||
/* Choose one of the following and comment out the rest: */ | /* Choose one of the following and comment out the rest: */ | ||
- | [[wiki: | + | /*[[wiki: |
/ | / | ||
/ | / | ||
- | |||
===== Further Reading ===== | ===== Further Reading ===== | ||
Line 91: | Line 65: | ||
* [[wiki> | * [[wiki> | ||
* [[wiki> | * [[wiki> | ||
- | |||
===== Discussion ===== | ===== Discussion ===== | ||
Discuss this wiki article and the pattern on the corresponding [[talk: | Discuss this wiki article and the pattern on the corresponding [[talk: |
patterns/parameter_object.txt · Last modified: 2021-10-18 22:24 by christian