Javafx Gridpane Builder的优点

时间:2013-02-12 05:18:57

标签: javafx

我想知道使用Javafx Gridpane Builder而不使用它的目的和/或好处是什么?我似乎无法找到关于建造者的目的的任何信息及其好处。

1 个答案:

答案 0 :(得分:1)

更新 - 构建器已弃用

关于一般的构建者,JavaFX项目负责人writes

  

在8中不推荐使用并从JavaDoc中删除,在9中删除(将作为可单独下载的Jar提供,以便您可以继续使用它们,但它们不会更新)。我们正在从样本中删除它们。

     

最好离开建筑商。


JavaFX中的Builder classes为功能提供了fluent interface。这种API通常比必要的代码更容易阅读。

Fluent API本质上是declarative,编写无bug声明性代码通常比有状态imperative code更容易。

可以创建一个Builder实例作为模板,并且在Advantages of JavaFX Builders中很好地演示了相同的实例重复使用。

JavaFX Builders还定义了可在FXML文档中使用的属性。有关此用法的详细信息,请参阅Introduction to FXML文档的“构建器”部分。

与命令式API相比,JavaFX 2.2中构建器可能不足的一些领域是:

  1. 构建者不利于属性绑定。
  2. 构建器API可能并非完整适用于所有功能。
  3. 构建者可以使用难以理解的泛型。
  4. 构建器不允许您在对象上设置静态约束。
  5. 对于简单的声明,构建者比他们的同行更加罗嗦。
  6. 第4点的一个例子是,Builder没有等同于GridPane.setVgrow(priority)等方法。

    至于GridPaneBuilder特别是使用GridPane类 - 它具有与其他构建器与命令式API比较相同的优点和缺点,但是GridPaneBuilder比其他一些构建器更暴力,因为它暴露了只是GridPane接口功能的一个子集 - 主要是因为GridPane非常依赖静态方法来指定布局约束,并且构建器中没有公开等效功能。