The XVIZBuilder
class is a "fluent" API which provides convenient chaining methods to build up XVIZ data in an easy-to-read way.
XVIZ Builder是一个流式接口类,它提供便捷链式方法,以一种易于阅读的方法构建XVIZ数据。
由于在XVIZ文档中读到上面这句话,有两个疑问,什么是流式接口(fluent API)?什么是链式方法?
菜鸡学习就是艰难,通常想去A地,还得先去绕去B转个车,时间就是这么浪费的,效率就是这么低的……通过Google,流式接口是软件工程中面向对象的一种API设计模型,以便提供可读的源代码。通常采用方法链式调用,来转发一系列对象方法调用的上下文,这个上下文this通常指被调用方法的返回值;对象自引用,新的上下文等于老的上下文;返回空的上下文来终止。似懂非懂,网上有对各种语言的这一特性进行详细说明,菜鸡的我现在只看的懂JavaScript
JavaScript许多库都采用了流式接口,最典型的是JQuery的数据查询操作了(然后菜鸡我没学过JQuery,只依葫芦画瓢地调用过几次api做样式改变,没有深入了解这个东西)
好吧,刚刚查阅了一下所谓Method Chaining就是之前很多地方见过的链式方法,只是之前照着写也不知道叫啥更不知其所以然了…………比如下面Jquery的这两个对比,其实就是在同一个对象连续调用多个函数时的代码简化方式