三层架构与MVC的区别
本篇博客是从网上找得各种资料,一再说说三层架构和MVC的区别
http://baike.baidu.com/view/687468.htm
三层架构与MVC的区别 MVC(模型Model-视图View-控制器Controller)是一种设计模式,我们可以用它来创建在域对象和UI表示层对象之间的区分。
同样是架构级别的,相同的地方在于他们都有一个表现层,但是他们不同的地方在于其他的两个层。
在三层架构中没有定义Controller的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是以实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。
http://topic.csdn.net/u/20090710/14/07f4447d-60c4-4b74-af1c-ea1b6e2e9ca7.html
当然啊,你要明白三层架构的MVC的区别和联系:
三层架构是最基本的项目分层结果,而MVC则是三层架构的一个变体,MVC是一种好的开发模式。首先你要明白MVC分别代表的是什么意思.
M 即Model(模型层),主要负责出来业务逻辑以及数据库的交互
V 即View(视图层),主要用于显示数据和提交数据
C 即Controller(控制器),主要是用作捕获请求并控制请求转发
三层:UI 界面层 BLL 业务逻辑层,DAL数据访问层,Model 实体层
MVC中的的M 不是三层中的Model(实体层),他其实包括三层中的 BLL,DAL,Model,这是非常要注意的,这也是他们之间的区别的关键所在
其有点有如下:
低耦合性
高重用性和可适用性
较低的生命周期成本
快速的部署
可维护性
有利于软件工程化管理
当然优点也有缺点,那就是内部结构复杂,不容易理解,文件数量大,管理难度自然也就大
三层架构…
他们细分之后得到的是:View(UI)、BIZ(BLL)、DAO(DAL)、Entity(Model)、Controller
MVC把 BIZ(BLL)、DAO(DAL)、Model(Entity) 统一称之为 模型(MODEL),得到:View、Controller、模型(MODEL)
三层 在我使用中 暂未体会到控制器的存在,完全是:UI、DAO、BLL
他们相同的设计理念就是:把视图设计与数据持久化进行分离,从而降低耦合性,易于扩展,提高团队开发效率。
三层是基于业务逻辑来分的,而mvc是基于页面来分的
根本就没有什么可比性。
其实两个一起用我感觉很好
MVC模式是一种复合设计模式,一种解决方案
三层是种软件架构,通过接口实现编程
三层模式是体系结构模式,MVC是设计模式
三层模式又可归于部署模式,MVC可归于表示模式
没有什么取舍的,说的根本不是一回事。在所谓的“三层”中,它要求你将BLL层独立出来,它只是告诉你表示层和业务逻辑层之间的静态关系。而MVC则告诉你在这个具体的地方如何处理其动态驱动流程,尽管mvc仍然粗糙(甚至mvp也是粗糙的),但是已经比所谓三层更细致一些了。
谢谢大家的关注,这几天都在忙面试,没来结贴。再次谢谢大家。
我大概明白了:三层架构和mvc设计模式侧重点不一样,三层是一种笼统的架构思想,没有限制具体的设计;而mvc就比较具体的说明它的设计方法。
还是自己动手做一下,理解会更深一些,以前都是用三层架构的方法
---------
http://www.2cto.com/kf/201110/106833.html
最近更新
随机推荐
- 邮政局表示将全面排查快递企业信息安
- IM+本地明文用户名口令泄露漏洞
- A5创业网播报:知乎着急了 直播行业淘
- 传高德将并入阿里UC事业群:俞永福接
- 英黑客侵入NASA 获取不明飞行物照片
- 苹果正积极寻找雪豹系统严重漏洞的解
- FreeBSD ZFS ZIL不安全文件权限漏洞
- 作家诉谷歌侵权案维持原判 终审获赔5
- Neo Geo X已破解 可运行Unibios非官方
- 报告称百度和阿里巴巴主导移动地图市
- Apache Server不完整HTTP请求远程拒绝
- 开工大吉|蓝凌人红红火火,一路向前
- MS05-044:Windows FTP 允许篡改文件传
- Web2.0十大Ajax安全漏洞以及成因
- Uber、易到们对出租车行业是趁火打劫
- IE0day安全漏洞 影响XP等旧系统(图)
- 拒绝式服务攻击袭来 你采防御措施了
- PHP 5.2.0及之前版本多个安全漏洞
- AI或成粤港澳大湾区建设引擎 丰修解企
- 微软表示本月将发布五个Windows 7更新