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型号的更多相关文章

  1. 扩展 ASP.NET MVC 模型扩展 – ASP.NET MVC 4 系列

           大部分人不能将核心运行时(System.Web 中的类)和 ASP.NET Web Forms 应用程序平台(System.Web.UI 中的类)区分开来.        ASP.NET ...

  2. Asp.Net MVC 模型(使用Entity Framework创建模型类) - Part.1

    这篇教程的目的是解释在创建ASP.NET MVC应用程序时,如何使用Microsoft Entity Framework来创建数据访问类.这篇教程假设你事先对Microsoft Entity Fram ...

  3. ASP.NET MVC模型绑定的6个建议(转载)

    ASP.NET MVC模型绑定的6个建议 发表于2011-08-03 10:25| 来源博客园| 31 条评论| 作者冠军 validationasp.netmvc.netasp 摘要:ASP.NET ...

  4. 带你初识Angular中MVC模型

    简介 MVC是一种使用 MVC(Model View Controller 模型-视图-控制器)设计模式,该模型的理念也被许多框架所吸纳,比如,后端框架(Struts.Spring MVC等).前端框 ...

  5. 模型 - 视图 - 控制器(MVC)详解

    模型视图控制器(MVC)一个相当实用且十分流行的设计模式.作为一位称职码农,你不可能没听说过吧. 不幸的是它难以让人理解. 在本文中,我将给出我认为是MVC的最简单的解释,以及为什么你应该使用它. 什 ...

  6. MVC模型部分验证

    ASP.NET MVC模型部分验证 在很多情况下,我们为了代码的复用可能会存在ViewModel共用的情形.比方说,web应用中常常会遇到的一个需求就是用户找回密码的功能.用户首先要验证通过验证邮箱( ...

  7. 2017年2月16日-----------乱码新手自学.net 之MVC模型

    第二篇博文,最近学习的内容还是回到了正题:ASP.NET MVC5之上.虽然EF学了个一知半解,但是用这点知识,看MVC5的MODEL部分应该还是够了.尽管周末还要恶补一下EF才行. (一)MVC简述 ...

  8. ASP.NET Core MVC 模型绑定用法及原理

    前言 查询了一下关于 MVC 中的模型绑定,大部分都是关于如何使用的,以及模型绑定过程中的一些用法和概念,很少有关于模型绑定的内部机制实现的文章,本文就来讲解一下在 ASP.NET Core MVC ...

  9. Apache OFBiz源码解读之MVC模型

    节点解析 request-map 你可以将其理解为controller的配置,如果你了解或使用过struts的配置或springmvc的annotation,就会发现这个定义跟它们是很相似的: [ht ...

随机推荐

  1. crm2011js操作IFRAME和选项集

  2. Codeforces 358 D. Dima and Hares

    dp[i][0]表示i号兔子先于i-1号兔子喂食,dp[i][1]反过来. 倒着DP D. Dima and Hares time limit per test 2 seconds memory li ...

  3. Delphi的没落有三个原因(比较贴切)

    Delphi的没落有三个原因:1,Object pascal并没有像C/C++那样成为业内标准. 如果你使用C或C++写程序,可以在任何地方进行编译,例如Windows.Linux.手机,甚至是单片机 ...

  4. 【剑指offer】不用加减乘除做加法

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/27966641 题目描写叙述: 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.* ...

  5. Java-WebSocket 项目的研究(三) WebSocketClient 类 具体解释

    通过之前两篇文章 Java-WebSocket 项目的研究(一) Java-WebSocket类图描写叙述 Java-WebSocket 项目的研究(二) 小试身手:client连接server并发送 ...

  6. Wi-Fi万能钥匙:说是破解,其实有危险(转)

    Wi-Fi 万能钥匙如此危险,怎样做才能让这种可能严重侵害公众利益的 app 在中国消失? 这个“钥匙”为什么能够破解 Wi-Fi?它真的是“破解” Wi-Fi 吗?两年前我就有这个疑问了,原谅我对一 ...

  7. CreateThread、_beginthreadex和AfxBeginThread 的区别

    CreateThread._beginthreadex和AfxBeginThread 创建线程好几个函数可以使用,可是它们有什么区别,适用于什么情况呢?参考了一些资料,写得都挺好的,这里做一些摘抄和整 ...

  8. A Game of Thrones(13) - Tyrion

    The north went on forever. Tyrion Lannister knew the maps as well as anyone, but a fortnight on the ...

  9. HDU 1061 N^N (n的n次方的最后一位)

    题目意思: http://acm.hdu.edu.cn/showproblem.php?pid=1061 求N^N的最后一位数. 题目分析: 此题有非常多种方法,主要是中循环节,看自己怎么找了.我的方 ...

  10. IOS线程操作(3)

    采用CGD更有效的比前两个(它被认为是如此,有兴趣的同学可以去试试). 这是推荐的方式来使用苹果的比较. GCD它是Grand Central Dispatch缩写,这是一组并行编程C介面. GCD是 ...