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模式使用的一般基本要求:

  • 同一信息可以在不同的窗口中显示
  • 数据的变化会即时在显示窗口中反映出来
  • 用户接口很容易改变,甚至可以在运行时改变
  • 不同的用户接口风格不会影响应用程序的核心逻辑

FishiGUI应用层的MVC模式:

依照MVC模式,可以将FishiGUI系统的应用层(即FishiGUIDemo)进一步分解为显示层和应用逻辑层,显示层包含视图和控制器这两个内部组件,而应用逻辑层则被抽象为MVC模式中的模型组件;为了保证软件质量,基于FishiGUI系统开发的应用程序也需要遵循一定的设计原则:应用逻辑层不能直接调用显示层的元素,因此,为了更新用户视图。必须改变注册的方式,先由视图在模型中注册,在由模型根据注册信息发送更新信息


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。