不然也不会混为一谈,大家往往对它联系知道很多。但是对它区别却知道较少,希望我上面讲解的两者之间的区别可以让大家对它有些了解,如有写的不妥的地方,请指教。
殊不知它俩并不是一个概念。下面我来为大家揭晓我所知道的一些真相。平时总是将三层架构与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.都是分层。
但是总体目的一样的都是为了解耦,前面说它目的时候也说了虽然它偏重点不同。对于初学者而言,不知道这两个偏重点有何不同的