了解PMVC模式(javafx)

时间:2018-06-02 06:18:31

标签: java javafx model-view-controller

我正在尝试理解Presentation Model-View-Controller模式as described here.

  

PMVC模式是MVC的最终变体,我们回到了三角形,但这次我们在成员之间有了清晰的联系。 PresentationModel负责保存用于显示应用程序数据的信息,以及如何显示所述数据的提示,例如颜色,字体等。与MVVM类似,View可以从Binder中获益,该Binder可以将数据从PresentationModel绑定到查看UI元素。 Controller现在满足于直接操作PresentationModel,完全忘记了特定的View。这导致了更加可测试的结果,因为PresentationModel和Controller完全独立于View。

enter image description here

我正试图解决几个问题:

对于将PresentationModel中的变量绑定到UI元素,该视图似乎是合理的。 Controller是否负责应用我们的XML / Scene构建器中定义的更改侦听器和方法? (如:)

@FXML
private void gainXPButtonOnAction(ActionEvent event) throws IOException {
    //Change something in the model
}

图像中的读/写(数据绑定)是否意味着视图/模型之间的唯一读写是数据绑定?这对我来说很有意义,但我不确定。

如果我有多个控制器,因为我有不同的场景,但我想从每个场景做一个按钮来做同样的动作,看起来命令是个好主意:命令是在Controller中初始化然后还是在控制器?

用于设置UI样式的.css文件是否属于View或Presentation Model?

我是否应该将演示模型中Arc形状的弧长等内容存储为某个变量,在视图中数据绑定,只在Controller中更改它?

感谢您的时间 - 我似乎无法理解这一点。上面链接中给出的示例让我感到困惑,因为它使用的是我希望避免使用的“Griffon”库。

0 个答案:

没有答案