Building Maintainable Software, C# Edition
by Joost Visser, Sylvan Rigal, Gijs Wijnholds, Pascal van Eck, Rob van der Leek
Chapter 5. Keep Unit Interfaces Small
Bunches of data that hang around together really ought to be made into their own object.
Martin Fowler
Guideline:
-
Limit the number of parameters per unit to at most 4.
-
Do this by extracting parameters into objects.
-
This improves maintainability because keeping the number of parameters low makes units easier to understand and reuse.
There are many situations in the daily life of a programmer where long parameter lists seem unavoidable. In the rush of getting things done, you might add a few parameters more to that one method in order to make it work for exceptional cases. In the long term, however, such a way of working will lead to methods that are hard to maintain and hard to reuse. To keep your code maintainable it is essential to avoid long parameter lists, or unit interfaces, by limiting the number of parameters they have.
A typical example of a unit with many parameters is the render method in the BoardPanel class of JPacman. This method renders a square and its occupants (e.g., a ghost, a pellet) in a rectangle given by the x,y,w,h parameters.
/// <summary> /// Renders a single square on the given graphics context on the specified /// rectangle. /// /// <param name="square">The square to render.</param> /// <param name="g">The graphics context to draw on.</param> /// <param name="x">The x position to start drawing.</param> /// <param name="y">The y position to start drawing.</param> /// <param name="w">The width of this square ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access