什么是 MVC 和 三层架构?

版权声明:本文为博主原创文章,欢迎转载,转载请注明出处。觉得此文有用的,不嫌麻烦的,就留个言呐,或者点个赞呐,要是嫌麻烦呢,也麻烦点个赞嘛 https://blog.csdn.net/qq_40147863/article/details/86541376

什么是 MVC 和 三层架构?

MVC 全名是 Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC 被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

MVC 和 三层架构并没有可比性

三层架构 是指将程序分为数据访问、业务处理、界面三个层次,是软件整体架构。

MVC 是仅仅是界面架构,也就是它其实只是三层架构的界面部分,M是指实体模型或者实体模型的一个代理,而非领域模型,C是指控制器,仅仅是做转向,不应该包含任何业务逻辑,V就是视图了。

至于那些个什么什么O,都是实体在不同层的映射,
详见: 整理 JAVA 中 PO,VO,DO,TO,BO,DAO,POJO 的解释

另外,MVC 在一些小的程序中也经常被当做软件整体架构,那个时候 M 往往就是实体模型了,但是这种时候,V 就对 M 产生了直接引用,也就是界面对实体产生依赖,这是很不好的(但小程序问题不大),此时可以尝试使用 MVP 模式解耦。

至于业务,看你怎么定义领域模型了,一般像上传文件这种操作并不会牵扯企业的业务,那就不应该当做一个业务,但如果这个上传是在工作流或者一些特殊处理中,则有可能上升到业务。怎么做,要看具体问题。

猜你喜欢

转载自blog.csdn.net/qq_40147863/article/details/86541376