MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
Model(模型)表示应用程序核心(比如数据库记录列表);通常模型对象负责在数据库中存取数据;
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b171edb05d9dd6ba0ae52a3bb3ee525f.png)
View(视图)显示数据(数据库记录)应用程序中处理数据显示的内容;
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8aac45f1fc6ece39688ab943e7155fbd.png)
Controller(控制器)处理输入(写入数据库记录)应用程序中处理用户交互的部分;通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据;
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f5f581b634a617caf8ce9b74fab0248f.png)
优点:MVC分层可以在一个时间内关注一个方面;可以只处理视图;从而提高效率;
耦合性低,从MVC分层角度可看出;
重用性高:例如多个视图可以共享一个模型;
生命周期成本低;
部署快;
可维护性高;
有利于软件工程化管理;
缺点:不适合小型,中等规模的应用程序;
增加系统结构和实现的复杂性(这点深有体会啊)
视图与控制器的过于紧密的连接;
视图对模型数据的低效率访问;
这篇是理论篇,下篇文章介绍实操篇;