谈谈你对MVC和三层架构的理解?
2010-03-01 14:39
465 查看
V 是皮肉,是看到的东西
M 是骨骼,是里面真实的东西
C 就是连接皮肉和骨骼的筋
对于界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制三种部件。
模型部件是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,他独立于具体的界面表达和I/O操作。
视图部件把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。
控制部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。通常一个视图具有一个控制器。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。
M 是骨骼,是里面真实的东西
C 就是连接皮肉和骨骼的筋
对于界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制三种部件。
模型部件是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,他独立于具体的界面表达和I/O操作。
视图部件把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。
控制部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。通常一个视图具有一个控制器。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。
相关文章推荐
- 谈谈你对MVC和三层架构的理解?(月薪三万的面试题)
- 谈谈你对MVC和三层架构的理解?(月薪三万的面试题)
- 谈谈你对MVC和三层架构的理解?(月薪三万的面试题)
- 重温Petshop 谈谈对三层架构的理解--兼发布一个通用的数据访问控件(oracle免装客户端)
- 三层架构,MVC模型,工厂设计模式的粗浅理解 转
- 重温Petshop 谈谈对三层架构的理解--兼发布一个通用的数据访问控件(oracle免装客户端)
- 对mvc及三层架构的个人理解
- 三层架构的进一步理解
- 谈谈你对MVC的理解
- MVC和普通三层架构的区别
- asp.net mvc与传统三层架构的区别
- 三层架构与MVC
- 三层架构(3-tier application) 与MVC对比
- 从三层架构到MVC,MVP 转
- 谈谈三层结构开发的理解
- MVC项目实践,在三层架构下实现SportsStore-01,EF Code First建模、DAL层等
- MVC项目实践,在三层架构下实现SportsStore-03,Ninject控制器工厂等
- 谈谈对于企业级系统架构的理解
- 黑马程序员---理解三层架构
- asp.net mvc中自行搭建实现工厂模式的spring.net+三层架构 (15-4-20)