With so many talking about fluent interfaces today, Andi Gutmans has tossed his hat into the ring with this new blog post with some of his thoughts.

I'd like to add to Paul's and Mike's posts regarding fluent interfaces.

I very much agree with them that this kind of method chaining allows to create very readable and intuitive interfaces. The million dollar question is when to actually use this kind of programming style.

Of course there are no definitive answers but I suggest to consider the following points: Use your intuition, If you don't have all of the data - reconsider using them, It really has to read well in your language (e.g. English), preferably as a complete sentence, and make sure that the base error handling it forces you to use is enough for your purposes.

And, of course, he's open to suggestions/comments on the subject, as well as any proposals for guidelines that might need to be set out there...

With so many talking about fluent interfaces today, Andi Gutmans has tossed his hat into the ring with this new blog post with some of his thoughts.

I'd like to add to Paul's and Mike's posts regarding fluent interfaces.

I very much agree with them that this kind of method chaining allows to create very readable and intuitive interfaces. The million dollar question is when to actually use this kind of programming style.

Of course there are no definitive answers but I suggest to consider the following points: Use your intuition, If you don't have all of the data - reconsider using them, It really has to read well in your language (e.g. English), preferably as a complete sentence, and make sure that the base error handling it forces you to use is enough for your purposes.

And, of course, he's open to suggestions/comments on the subject, as well as any proposals for guidelines that might need to be set out there...