Does the signature of a method create a dependency between the implementation of that method, and the code that invokes it?

  softwareengineering

I am reading Ousterhout’s A Philosophy of Software Design. In Section 2.3, Outserhout writes:

The signature of a method creates a dependency between the implementation of that method and the code that invokes it: if a new parameter is added to a method, all of the invocations of that method must be modified to specify that parameter.

Does a method really create a dependency between the calling code and its implementation?

I see how the calling code becomes dependent on the signature, but surely the implementation is arbitrary; it could be unimplemented (ignoring the parameters entirely), and therefore not dependent on the signature at all.

Perhaps the author meant that the dependency exists spacially between the calling code and the implementation? I could agree with this, but I suspect the truth of this idea depends largely (perhaps entirely) on your personal model of how these ideas fit together.

New contributor

user3899725 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

The implementation includes the parameter list, as well as the body of the method. Ignoring them in the body does not change the requirement that all the parameters are mentioned.

LEAVE A COMMENT