什么是设计的术语ala"object.method1().method2().method3()"?

Pro*_*ody 6 c++

这个设计的术语是什么?

object.method1().method2().method3()
Run Code Online (Sandbox Code Playgroud)

..当所有方法都返回*这个?

我不久前找到了这个术语,但同时失去了它.我不知道如何在谷歌搜索这个:)如果有人能想到一个更好的标题的问题,随时改变它.

谢谢

更新-Gishu:阅读之后,我觉得你的问题是误导的wrt代码片段..(随意回滚)

方法链接

object.method1().method2().method3()
Run Code Online (Sandbox Code Playgroud)

流畅的界面

private void makeFluent(Customer customer) {
        customer.newOrder()
                .with(6, "TAL")
                .with(5, "HPK").skippable()
                .with(3, "LGV")
                .priorityRush();
    }
Run Code Online (Sandbox Code Playgroud)

Joe*_*ham 10

在我看来,你正在描述一个流畅的界面.我也听说它被称为管道或链接.

更新-Gishu:http://martinfowler.com/bliki/FluentInterface.html


PW.*_*PW. 10

它链接这些方法调用,这就是为什么这称为方法链接


Gre*_*ill 8

它通常被称为方法链.其应用的一个例子是命名参数成语.

顺便说一句,我觉得有趣的是,在Google中搜索"object method1 method2"会出现您正在寻找的页面.:)