iis7 asp网站 503,海拉尔做自己的网站,兰州易天网站建设公司有哪些?,网站建设原则包括哪些内容我们平时总是将三层架构与MVC混为一谈#xff0c;殊不知它俩并不是一个概念。下面我来为大家揭晓我所知道的一些真相。 首先#xff0c;它俩根本不是一个概念。 三层架构是一个分层式的软件体系架构设计#xff0c;它可适用于任何一个项目。 MVC是一个设计模式#xff0c;它…我们平时总是将三层架构与MVC混为一谈殊不知它俩并不是一个概念。下面我来为大家揭晓我所知道的一些真相。 首先它俩根本不是一个概念。 三层架构是一个分层式的软件体系架构设计它可适用于任何一个项目。 MVC是一个设计模式它是根据项目的具体需求来决定是否适用于该项目。 那么架构跟设计模式有什么区别呢 我们从接手一个项目开始首先我们需要进行架构设计一般我们采用的就是分层式的架构设计即我们的三层架构。 然后在确定了架构以后我们再根据项目的具体需求去考虑是否需要应用一些设计模式比如是否应用我们的MVC模式抽象工厂模式等等。在这里我们看出MVC与三层架构不是一个等级的而与抽象工厂等设计模式才是一路的 最后确定了模式以后就是我们的一些具体的实现了。当然一个项目不仅仅考虑这些问题我只是为了说明两者的区别将其他问题已省略 其次它俩划分的层次不同。 三层架构将整个项目划分为表现层UI、业务逻辑层BLL、数据访问层DAL。 MVC 即Model模型View视图Controller控制。 下面看一下他俩的区别与联系 通过这个图我们可以知道我们平常所说的V是UIC是BLLM是DAL的观点是错误的。 而我们通常所见到的MVC一般也都是在应用三层架构的基础上即将Model层再进行分层。而如果Model不再进行划分的话那么使用MVC的意义也就不大了。 然后它俩的目的着重点不同。 三层架构的目的着重点是“高内聚低耦合”即解耦。 MVC的目的则是实现Web系统的职能分工即职责划分。 其实职责划分也是解耦但是三层侧重的是整体的一个解耦而MVC侧重的是web系统的解耦即侧重jsp和Servlet的一个解耦。 最后为何我们会将其混为一谈 既然两者有这么多的不同我们为什么还总是将其混淆呢下面我列举了几个我们常常将其混为一谈的几个原因 1.二者都是“三层”。 这个原因是最容易迷惑我们初学者的一个是UI,BLL,DAL一个是ViewControllerModel不都是三层吗 虽然都是“三层”不一定是真的三层还可以是多层但是它们的划分的不一样。大家可从上面的图中看出不同。 2.MVC总是伴随着三层架构。 这个就是我在前面一再强调的我们一般是在考虑使用也可以不使用了三层架构的基础上再根据具体需求决定是否需要使用MVC于是我们常说的MVC中总是伴随着三层架构所以大家总是会认为MVC就是三层架构三层架构就是MVC殊不知它们二者是一起出现的。 3.都是在分层即都是在解耦。 前面说它们目的的时候也说了虽然它们的侧重点不同但是它们的总体目的是一样的都是为了解耦对于初学者而言是不知道这两个侧重点有何不同的。 大家往往对它们的联系知道很多不然也不会混为一谈但是对它们的区别却知道较少希望我上面讲解的它们两者之间的区别可以让大家对它们有些了解如有写的不妥的地方请指教。转载于:https://www.cnblogs.com/syl1314/p/8056417.html