最近的学习简直就是一头雾水,不知所云!!
在学习三层的时候看了一些关于MVC的东西,很自然的就把MVC也理解成了三层,现在才有一种恍然大悟的感觉,今天这篇博客我们从三层入手,来深入理解MVC的概念,下一篇博客我们介绍在项目中是如何应用MVC框架的。
首先我们明确什么是三层,三层是一种思想,所谓的“三”,也仅仅是一个数字而已,我们可以根据我们项目的需要设计成若干个层,比如在“机房收费”项目中我们就用到了7层。
其次我们理解三层分为了U层、B层、D层,也即界面显示层、业务逻辑层、数据处理层。每一层所处理的事情这里不详细说了。
MVC也是“三层”,这里的“三”其实就是由三部分构成的,即M、V、C(模型、视图、控制器),准确的理解就是这三个部分组合起来才完成了上述三层中的U层的工作,也即三个部分都是为界面显示服务的。而其中的模型层,与我们经常说的实体层起到的作用是十分密切的。下面看这样一个图:
这样理解MVC和三层的关系是不是清楚了很多。
如果我们要把两者相提并论的话,那他们之间的关系也确实复杂,虽然在表面上看来他们是不一样的,但终究其核心都是以一个目的为主:解耦合。
那三层和MVC各自是怎么解耦合的呢??
三层中的解耦简单的理解就是以整个系统为全局观。解除了界面,业务逻辑和后台数据库之间的耦合,而MVC的解耦就是以整个U层为主,为了解决界面混乱的问题,分离了界面的纯显示和部分的控制代码,我们用一个控制器来控制对应界面的显示,里面设计到传递的参数,数据库的交互就是Model了。
以上是我对MVC的一个简单的认识,下一篇博客我们从项目中个实际的应用。