MVC模型与FishiGUI应用层MVC型号
MVC概要:
MVC (Modal View Controler)M是指数据模型,V是指用户界面,C则是控制器。 使用MVC的目的是将M和V的实现代码分离,从而使同一个程序能够使用不同的表现形式。比方一批统计数据你能够分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。 使用MVC应用程序被分成三个核心部件:模型、视图、控制器。 它们各自处理自己的任务。
- 视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中。HTML依然在视图中扮演着重要的角色。但一些新的技术已层出不穷。它们包含Macromedia Flash和象XHTML。XML/XSL,WML等一些标识语言和Web services.
- 怎样处理应用程序的界面变得越来越有挑战性。MVC一个大的优点是它能为你的应用程序处理非常多不同的视图。 在视图中事实上没有真正的处理发生,无论这些数据是联机存储的还是一个雇员列表,作为视图来讲,它仅仅是作为一种输出数据并同意用户操纵的方式。
- 模型表示企业数据和业务规则。在MVC的三个部件中。模型拥有最多的处理任务。 比如它可能用象EJBs和ColdFusion Components这种构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。因为应用于模型的代码仅仅需写一次就能够被多个视图重用,所以降低了代码的反复性。
- 控制器接受用户的输入并调用模型和视图去完毕用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出不论什么东西和做不论什么处理。它仅仅是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。
MVC模式使用的一般基本要求:
- 同一信息能够在不同的窗体中显示
- 数据的变化会即时在显示窗体中反映出来
- 用户接口非常easy改变。甚至能够在执行时改变
- 不同的用户接口风格不会影响应用程序的核心逻辑
FishiGUI应用层的MVC模式:
按照MVC模式,能够将FishiGUI系统的应用层(即FishiGUIDemo)进一步分解为显示层和应用逻辑层。显示层包括视图和控制器这两个内部组件,而应用逻辑层则被抽象为MVC模式中的模型组件;为了保证软件质量。基于FishiGUI系统开发的应用程序也须要遵循一定的设计原则:应用逻辑层不能直接调用显示层的元素。因此,为了更新用户视图。 必须改变注冊的方式,先由视图在模型中注冊。在由模型依据注冊信息发送更新信息
版权声明:本文博主原创文章,博客,未经同意不得转载。
MVC模型与FishiGUI应用层MVC型号的更多相关文章
- 扩展 ASP.NET MVC 模型扩展 – ASP.NET MVC 4 系列
大部分人不能将核心运行时(System.Web 中的类)和 ASP.NET Web Forms 应用程序平台(System.Web.UI 中的类)区分开来. ASP.NET ...
- Asp.Net MVC 模型(使用Entity Framework创建模型类) - Part.1
这篇教程的目的是解释在创建ASP.NET MVC应用程序时,如何使用Microsoft Entity Framework来创建数据访问类.这篇教程假设你事先对Microsoft Entity Fram ...
- ASP.NET MVC模型绑定的6个建议(转载)
ASP.NET MVC模型绑定的6个建议 发表于2011-08-03 10:25| 来源博客园| 31 条评论| 作者冠军 validationasp.netmvc.netasp 摘要:ASP.NET ...
- 带你初识Angular中MVC模型
简介 MVC是一种使用 MVC(Model View Controller 模型-视图-控制器)设计模式,该模型的理念也被许多框架所吸纳,比如,后端框架(Struts.Spring MVC等).前端框 ...
- 模型 - 视图 - 控制器(MVC)详解
模型视图控制器(MVC)一个相当实用且十分流行的设计模式.作为一位称职码农,你不可能没听说过吧. 不幸的是它难以让人理解. 在本文中,我将给出我认为是MVC的最简单的解释,以及为什么你应该使用它. 什 ...
- MVC模型部分验证
ASP.NET MVC模型部分验证 在很多情况下,我们为了代码的复用可能会存在ViewModel共用的情形.比方说,web应用中常常会遇到的一个需求就是用户找回密码的功能.用户首先要验证通过验证邮箱( ...
- 2017年2月16日-----------乱码新手自学.net 之MVC模型
第二篇博文,最近学习的内容还是回到了正题:ASP.NET MVC5之上.虽然EF学了个一知半解,但是用这点知识,看MVC5的MODEL部分应该还是够了.尽管周末还要恶补一下EF才行. (一)MVC简述 ...
- ASP.NET Core MVC 模型绑定用法及原理
前言 查询了一下关于 MVC 中的模型绑定,大部分都是关于如何使用的,以及模型绑定过程中的一些用法和概念,很少有关于模型绑定的内部机制实现的文章,本文就来讲解一下在 ASP.NET Core MVC ...
- Apache OFBiz源码解读之MVC模型
节点解析 request-map 你可以将其理解为controller的配置,如果你了解或使用过struts的配置或springmvc的annotation,就会发现这个定义跟它们是很相似的: [ht ...
随机推荐
- 获取sina,baidu,google财经历史和实时股票数据接口
实时股票数据接口 股票数据的获取目前有如下两种方法可以获取:1. http/javascript接口取数据2. web-service接口1.http/javascript接口取数据1.1Sina股票 ...
- 学习android内核 -- 内存管理相关
Android内存管理: 1.当应用程序关闭以后,后台对应的进程并没有真正的退出(处于休眠状态,一般不占用系统CPU的资源),这是为了下次再启动的时候能快速启动. 2.当系统内存不够时,AmS会主动根 ...
- php中如何开启GD库
php中开启GD库 在浏览器输入启用wamp下的GD库(否则验证码可能不能用) D:\lamp\php\php.ini 文件
- 《转》在win7,boa-constructor 0.6.1 的palette面板中没有控件图标的解决方法
原地址:http://blog.csdn.net/rickleo/article/details/6532595 在win7-64bit环境下,boa-constructor 0.6.1 的palet ...
- Java Thread.join()详解(转)
(1)join方法是可以中断的(2)在线程joiner在另一个线程t上调用t.join(),线程joiner将被挂起,直到线程t结束(即t.isAlive()返回为false)才恢复 package ...
- hdu 4963(中途相遇法)
题目链接:Dividing a String 题意:给定一个2*n(n<=20)的字符串及每个位置的字符包含的权重,求将该字符串分成两个子序列S1.T1,要求S1=T1且abs(weight1- ...
- NetBeans工具学习之道:NetBeans的(默认)快捷键
没什么好介绍的,是netbeans的快捷键,比較全面.看到好多坛子里还在问eclipse下的这个快捷键怎么netbeans下没有呢.曾经收集的,如今列在以下: 事实上,在当前安装的netbeans的 ...
- 使用CSVDE批量导入命令/出口AD用户
使用CSVDE批量导入命令/出口AD用户 CSVDE命令行工具可以与真实的用户信息CSV文件.批量导入/出口AD在. 导入的基本的语法命令是这种: csvde -i -f c:\fil ...
- kobox : key_wq.c -v1 如何使用工作队列 workqueue
kobox: key_wq.c - v1 说明: TQ2440主要驱动因素,四个按键驱动的处理 key_wq.c和key.c类别似,与key.c之间的差异的主要驱动力: key.c使用计时器,在中断发 ...
- linux根据部署jenkins
1. Jenkins 下载 Jenkins 下载网址:http://jenkins-ci.org/ 2. Jenkins 安装 (1) 安装JDK JDK下载:http://www.oracle.co ...