当前位置:  开发笔记 > 编程语言 > 正文

如何将MVC模式应用于GUI开发

如何解决《如何将MVC模式应用于GUI开发》经验,为你挑选了1个好方法。

我是一名Web开发人员,但我对C++和C#有很好的理解.但是,最近我编写了一个GUI应用程序,我开始迷失在如何处理我的控制器和视图逻辑之间的关系.在PHP中它非常简单 - 我可以闭着眼睛编写自己的MVC模式 - 主要是因为PHP是无状态的,并且每个请求都会重新生成整个表单.但在应用程序编程语言中,我很快就迷失了.

我的问题是:如何将我的控制器与视图分开?视图是否应附加到来自控制器的事件 - 或者视图是否应实现控制器与之交互的接口?



1> 小智..:

如果我是你,我会从你的视图界面公开事件.这将允许您使控制器成为整个交互的中心.

控制器将首先加载并实例化视图,我将使用依赖注入,这样您就不会在视图本身上创建依赖关系,而只是在接口上创建依赖关系.控制器将访问模型并将数据加载到视图中.控制器将绑定到视图接口上定义的事件.然后,控制器将通过事件处理将数据保存回模型.

如果您愿意,您还可以使用事件代理,这将无需为每个视图声明一个接口.这样您就可以通过属性绑定到事件.

这将使Controller依赖于模型和视图接口,视图仅依赖于数据而且依赖于模型而没有依赖关系.

可以在CAB和智能客户端软件工厂链接到智能客户端中找到上述设计思想的一些示例.他们使用MVP模式,但同样可以轻松应用于MVC模式.

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有