引用网上对MVC的定义:MVC全名是Model View Controller,MVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。
其核心思想,其实就是为了将界面和逻辑处理进行解耦,让两者之间联系松散, 从而增强项目的可维护性以及可扩展性。
引用百度百科中的一张图来说明其结构。
个人对MVC的类比理解
MVC模式其实类似于一台电视机,其中
模型(Model):相当于电视机内部的电路设施等,它将电视机的视频信号输入处理、画面显示、声音播放、接收遥控等功能实现;
视图(View):相当于电视机的外观,显示屏显示的电视内容等;
控制器(Controller):相当于电视机的遥控器,用来选择电视机所具备的功能;
一般而言,我们看电视,几乎不会去只关心电视机是怎样接收电视信号、怎样将信号转换为视频、怎样显示、怎样发声之类的功能,而这些功能,就相当于模型(Model);而我们关心的电视显示的节目内容,这就相当于视图(View);如果想换台,或者想改变声音大小,这时候,我们一般会用到遥控器去进行遥控,遥控器中只有遥控电视机的相关功能,但是却不能实现电视机的这些功能,这就相当于控制器(Controller)。