MVC pattrern。哪个类是切入点?

时间:2017-06-24 19:56:32

标签: java design-patterns

MVC模式通过控制器分离数据模型,GUI视图和事件处理。可以使Model成为切入点

public class MyModel {

    private Integer value;
    MyView view = new MyView(this); 
    MyController controller= new MyController (this);
    //MyController controller= new MyController (this, view);
    }

或者,可以从Controller开始,从控制器创建模型和视图。

首先应该调用哪个类并创建其他两个类?

2 个答案:

答案 0 :(得分:1)

以上都不是。您可以从源代码编辑器“生成”架构的每个部分。

视图收集(用户)输入并对它们执行表面编辑(表面验证)。假设有效输入(例如,应解析为数字的非数字),控制器选择(不生成)要传递解析或验证的输入的模型组件,将结果数据推送到选定的模型组件,然后将模型标识符转发给视图渲染器。

模型对从控制器接收的输入执行业务逻辑,然后以预期格式(例如结果类型)打包任何结果。

从控制器接收转发的视图从模型中为结果对象发出拉取请求,然后将其显示到应用程序的输出通道。

有可能动态生成某些部分或其他部分,但这不是架构的一个重要方面。例如,控制器可以调用模型工厂,然后将数据推送到接收的模型实例。在这里,不是控制器生成模型类,而是在工厂的帮助下选择一个。

摘要:View接收输入,对其进行按摩,然后将其提交给控制器。控制器选择而不是生成模型和新视图。控制器将输入推送到模型,并将模型标识符转发到新视图。新视图从模型中提取结果并将其显示在输出中。

阅读http://download.oracle.com/otn_hosted_doc/jdeveloper/1012/developing_mvc_applications/adf_aboutmvc2.html以获得对该概念的基本介绍。 (这个页面花了不到五分钟的时间才找到在线搜索。)

答案 1 :(得分:0)

我通常创建一个可观察的主类,让主类创建模型,视图和控制器,然后将视图添加到模型中。