设计师网站接单,三维建筑设计软件,北京建设网证书查询平台官网,阳江网站网站建设它们之间的交互有以下几种#xff1a;1.当用户在视图上做任何需要调用模型的操作时#xff0c;它的请求将被控制器截获。2.控制器按照自身指定的策略#xff0c;将用户行为翻译成模型操作#xff0c;调用模型相应逻辑实现。3.控制器可能会在接到视图操作时#xff0c;指定… 它们之间的交互有以下几种 1.当用户在视图上做任何需要调用模型的操作时它的请求将被控制器截获。 2.控制器按照自身指定的策略将用户行为翻译成模型操作调用模型相应逻辑实现。 3.控制器可能会在接到视图操作时指定视图做某些改变。 4.当模型的状态发生改变时将通过某种方式通知视图。 5.视图可以从模型获取状态从而改变自己的显示。 我要引入一个设计模式叫观察着Observer模式。 在MVC中视图是观察者模型是被观察者当模型状态改变时调用所有观察者的Update方法通知视图模型有变视图在Update方法里写下响应代码完成操作。通过这个方法视图和模型就可以在仅依赖接口的情形下进行交互而不必强耦合而且在模型不变的情况下视图可以随意替换。只要实现了IObserver 2. 在MVC中另一个使用接口的地方就是控制器这里我要首先引入一个设计模式策略模式Strategy。在MVC中控制器就使用了这个模式。 刚才我说过视图负责与用户交互但是它只负责界面显示部分至于当用户做了某个操作如单击某个按钮后系统应该怎么反应视图并不负责它只是将这个动作交给控制器控制器根据内置的策略将用户操作翻译成模型的逻辑。这就是说同一个视图、同一种操作模型可以做出不同的反应这取决与控制器的内置策略。所以我们的系统中可以有很多控制器它们有不同的策略当视图希望改变策略时它可以更换控制器。怎么实现呢这就需要视图不能和具体控制器耦合而是要仅依赖一个控制器接口如IController并聚合一个IController的实例。当希望更改策略时可以在系统运行时动态更换Controller这就是策略模式的实现。 转载于:https://www.cnblogs.com/james1207/p/3297167.html