谈谈MVC模式
来源:互联网 发布:视觉盛宴软件制作 编辑:程序博客网 时间:2024/05/29 04:46
我发现,计算机语言本身其实不难,无非是一些语法规则,时间长了自然就会熟练使用。真正困难的是算法和结构,前者需要好的数学基础,后者需要对所要解决的问题有全面深刻的理解和规划。
1.
程序的结构是一门专门的学问,叫做“软件模式”(software patterns),专门研究编程的方法论。MVC模式就是软件模式中的一种,它对我的启发特别大。我觉得它不仅适用于写程序,也适用于其他广泛的设计和组织工作。
下面是我对MVC模式的一些个人的理解,基本上是纯方法论的讨论,不涉及到具体的编程。我希望,这篇文章对那些不懂计算机的朋友,也能带来一些启发。
2.
所谓“MVC模式”是三个单词的首字母缩写,它们是Model(模型)、View(视图)和Controller(控制)。
这个模式认为,程序不论简单或复杂,从结构上看,都可以分成三层。
1)最上面的一层,是直接面向最终用户的“视图层”(View)。它是提供给用户的操作界面,是程序的外壳。
2)最底下的一层,是核心的“数据层”(Model),也就是程序需要操作的数据或信息。
3)中间的一层,就是“控制层”(Controller),它负责根据用户从“视图层”输入的指令,选取“数据层”中的数据,然后对其进行相应的操作,产生最终结果。
这三层是紧密联系在一起的,但又是互相独立的,每一层内部的变化不影响其他层,并且设计了接口,供其上面一层调用。这些接口叫做“界面”(Interface)。这样一来,程序编写就可以实现模块化,修改外观或者变更数据都不用修改其他层,大大方便了维护和升级。
3.
大家可能都用过Windows里的计算器小程序。我就用它作为例子,解释一下MVC模式,虽然它不一定使用这个模式编写。
在这个计算器程序中,外部的那些按钮和最上面的显示条,就是“视图层”,那些需要运算的数字就是“数据层”,执行加减乘除的那些内部运算步骤就是“控制层”。每一层执行不同的功能,整个程序的结构非常清楚。
如果我们扩大一点想象,就可以发现,很多程序或多或少同这个计算器的实现方法很类似,也是有一些按钮,执行一些操作,返回一些结果。因此,MVC模式的应用是非常广泛的。
4.
在我看来,不仅编写程序可以用MVC模式,制造家用电器也可以用MVC模式。
就拿家用的微波炉为例,可以将它也理解成三层结构。最简单的情况下,微波炉的操作用两个转盘实现,一个控制温度,另一个控制时间。这两个转盘就是“视图层”(view),而其内部的微波产生装置则是“数据层”(Model),这里的“数据”需要理解成“核心功能”。至于将用户通过转盘输入的信息,转换成对微波产生器的操作,则用“控制层”来实现。
如果每一层都是独立的,那么微波炉外部更换一个新潮的外壳,或者内部更换更大功率的微波产生器,完全可以在不更改其他层的情况下实现。这就是MVC模式的优势。
- 谈谈MVC模式
- 谈谈 mvc模式
- 谈谈JavaScript MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈JavaScript MVC模式
- 谈谈MVC模式
- 简单谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 谈谈MVC模式
- 上软解散内幕
- Ehcache 1.5.0 User Guide - Cache Eviction Algorithms (缓存移出算法)
- div根据内容自动调节高度的解决方法
- CSS学习笔记录(1)
- windows启动过程详解
- 谈谈MVC模式
- 法国休假一瞥:工作满1年可休5周
- Struts2.1笔记(四):深入Struts2
- arcgis server部署 自己安装的体会
- 成为嵌入式程序员应知道的10个基本问题
- java实现判断两主机是否相连!
- AJAX
- TOTAL COMMAND初步介绍
- vs2005中配置boost库