当使用流利的API进行编程或仅使用方法链接时,我看到的样式主要是这样的:

var obj = objectFactory.CreateObject()
    .SetObjectParameter(paramName, value)
    .SetObjectParameter(paramName, value)
    .DoSomeTransformation();


将点放在行首而不是行尾的原因是什么:

var obj = objectFactory.CreateObject().
    SetObjectParameter(paramName, value).
    SetObjectParameter(paramName, value).
    DoSomeTransformation();


还是团队达成共识仅仅是一种时尚?

最佳答案

这仅仅是一种风格。

放置的好处。该行的开头是一眼就可以清楚地知道这不是一个独立的方法调用。

例如,如果您这样做:

var obj = objectFactory.CreateObject()
    .SetObjectParameter(paramName, value)


您可以说SetObjectParameter(...)是在其他对象上调用的一种方法,只需查看该行即可。这样做:

var obj = objectFactory.CreateObject().
    SetObjectParameter(paramName, value)


要求您查看上一行来说明。例如,这可能是格式问题,即:

var obj = objectFactory.CreateObject();
    SetObjectParameter(paramName, value);


(在这里,SetObjectParameter将是当前类型上的方法,而不是CreateObject()返回的类型上的方法-但是,通过查看第二行,如果没有。开头,这是不明显的)。

10-08 10:50