Named parameter

From Free net encyclopedia

Template:Cleanup-date

In computer programming, naming of parameters (or named parameters) means that the method signature clearly states the name (meaning) of each parameter. This is not used in languages like Java and [[C++]]. It is supported in languages like Smalltalk and Objective C; in Objective Caml, named parameters are called labels.

For example, consider a Java method call:

window.addNewControl("Title", 20, 50, 100, 50, true);

Here is the same method call in ObjC:

[window addNewControlWithTitle:@"Title"
                     xPosition:20
                     yPosition:50
                         width:100
                        height:50
                    drawingNow:YES];

Note that the Objective-C version is more explicit, while the Java version is more concise. Depending on the particular instance, a programmer may find one or the other easier to read.

Note that the named parameters in Smalltalk and Objective-C refers to the syntactical presentation and not to the underlying implementation. Neither language supports named parameters in the sense that, for example, Python supports key=value parameters.

For example, in the above Objective-C fragment, the method name is literally "addNewControlWithTitle:xPosition:yPosition:width:height:drawingNow:".