【发布时间】:2008-09-11 17:32:51
【问题描述】:
假设你返回一个类的引用而不是返回一个方法,即使它没有任何特定的语义意义。在我看来,它会给你更多关于如何调用方法的选择,允许你以类似流畅的界面风格使用它,我真的想不出任何缺点,因为你不需要做任何事情带有返回值(甚至存储它)。
假设您处于想要更新对象然后返回其当前值的情况。 而不是说
myObj.Update();
var val = myObj.GetCurrentValue();
你可以把这两行结合起来说
var val = myObj.Update().GetCurrentValue();
编辑:我一时兴起问了以下问题,回想起来,我同意这可能是不必要且复杂的,但是我的问题是关于返回这个而不是 void 立场。
在相关的说明中,你们如何看待让该语言包含一些新的语法糖:
var val = myObj.Update()<.GetCurrentValue();
此运算符的优先级较低,因此 myObj.Update() 将首先执行,然后在 myObj 上调用 GetCurrentValue(),而不是 Update 的 void 返回。
基本上我在想象一个运算符,它会说“在左侧第一个有效对象上调用运算符右侧的方法”。有什么想法吗?
【问题讨论】:
标签: .net fluent-interface