The other week I wrote about creating
HTML controls in ASP.NET MVC using the
Fluent Interface pattern. I haven't been a Smalltalker since the 90s so it took awhile for it click where I had seen this pattern before. In Smalltalk the default return value from a message send (aka method) is the receiver (aka the object itself or 'self'). You are encouraged by the language to create readable chains of method sends.
I also had a thought about how the C# compiler could support this as a language level feature by allowing the 'this' keyword as the return type for a method.
So instead of having to write a method like:
public Image ImagePath(string path) {
imagePath = path;
return this;
}
You could just write:
public this ImagePath(string path) {
imagePath = path;
}
No comments:
Post a Comment