Looking for a word here ….
We have a bit of a wording problem. With what I am current building we have a bit (not precisely) a notion of "tail calls". Here's an example:
public
void LookupMessage(int messageId){
MessageStoreService messageStore = new MessageStoreService();
messageStore.LookupMessage(messageId);
}
The call to LookupMessage() doesn't return anything as a return value or through output parameters. Instead, the resulting reply message surfaces moments later at a totally different place within the same application. At the same time, the object with the method you see here, surrenders all control to the (anonymous) receiver of the reply. It's a tiny bit like Server.Transfer() in ASP.NET.
So the naming problem is that neither of "GetMessage()", "LookupMessage()", "RequestMessage()" sounds right and they all look odd if there's no request/response pattern. The current favorite is to prefix all such methods with "Yield" so that we'd have "YieldLookupMessage()". Or "LookupMessageAndYield()"? Or something else?
Update: Also consider this
public void LookupCustomer(int customerId)
{
CustomerService cs = new CustomerService();
cs.FindCustomer(customerId);
}