名扬数据:三层架构与MVC谜团之答案揭晓

不然也不会混为一谈,大家往往对它联系知道很多。但是对它区别却知道较少,希望我上面讲解的两者之间的区别可以让大家对它有些了解,如有写的不妥的地方,请指教。

殊不知它俩并不是一个概念。下面我来为大家揭晓我所知道的一些真相。平时总是将三层架构与MVC混为一谈。

俩根本不是一个概念。首先。

可适用于任何一个项目。三层架构是一个分层式的软件体系架构设计。

根据项目的具体需求来决定是否适用于该项目。MVC一个设计模式。

那么架构跟设计模式有什么区别呢?

首先,从接手一个项目开始。需要进行架构设计,一般我采用的就是分层式的架构设计,即我三层架构。

确定了架构以后,然后。再根据项目的具体需求去考虑是否需要应用一些设计模式,比方是否应用我MVC模式,笼统工厂模式等等。这里我看出,MVC与三层架构不是一个等级的而与笼统工厂等设计模式才是一路的

确定了模式以后,最后。就是一些具体的实现了当然一个项目不只仅考虑这些问题,只是为了说明两者的区别,将其他问题已省略)

俩划分的层次不同。其次。

三层架构将整个项目划分为:表示层(UI业务逻辑层(BLL数据访问层(DA L

MVC即Model模型)View视图)Control控制)

下面看一下他俩的区别与联系:

平常所说的VUICBLLMDA L观点是错误的通过这个图我可以知道。

即将Model层再进行分层。而如果Model不再进行划分的话,而我通常所见到MVC一般也都是应用三层架构的基础上。那么使用MVC意义也就不大了

俩的目的着重点不同。然后。

低耦合”即解耦。三层架构的目的着重点是高内聚。

即职责划分。MVC目的则是实现Web系统的职能分工。

但是三层侧重的整体的一个解耦,其实职责划分也是解耦。而MVC偏重的web系统的解耦,即侧重jsp和Servlet一个解耦。

为何我会将其混为一谈?最后。

为什么还总是将其混淆呢,既然两者有这么多的不同。下面我列举了几个我经常将其混为一谈的几个原因:

1.二者都是三层”

BLL,这个原因是最容易迷惑我初学者的一个是UI.DA L一个是ViewControlModel不都是三层吗?

还可以是多层)但是划分的不一样。大家可从上面的图中看出不同。虽然都是三层”不一定是真的三层。

2.MVC总是随同着三层架构。

所以大家总是会认为MVC就是三层架构,这个就是前面一再强调的一般是考虑使用(也可以不使用)三层架构的基础上再根据具体需求决定是否需要使用MVC于是常说的MVC中总是随同着三层架构。三层架构就是MVC殊不知,二者是一起呈现的

即都是解耦。3.都是分层。

但是总体目的一样的都是为了解耦,前面说它目的时候也说了虽然它偏重点不同。对于初学者而言,不知道这两个偏重点有何不同的