【MVC】初识

简介: 【MVC】初识

MVC模式,Model View Controller。

把软件系统分为三个基本部分:

M(Model)模型;
V(View)视图;
C(Controller)控制器。

与传统三层对比:

传统三层:
    U(User Interface layer)界面层;
    B(Business Logic Layer)业务逻辑层;
    D(Data Access Layer)数据访问层。

分层的目的:“高内聚低耦合”。

MVC中的 Model是指 要处理的业务代码和数据操作代码(领域模型) ,相当于传统三层中的 (B层+D层)

View 视图主要是指大量的页面,跟用户打交道,并能够展示数据

Controller看成是Model和View的桥梁。

传统三层中有个Model实体层。此Model非彼Model。MVC中的Model包含的内容要比Model实体层包含的内容丰富的多。

优点:

1、视图控制模型分离, 提高代码重用性。 
2、提高开发效率。 
3、便于后期维护, 降低维护成本。 
4、方便多开发人员间的分工。 

缺点:

1、清晰的构架以代码的复杂性为代价, 对小项目优可能反而降低开发效率。 
2、运行效率相对较低 
3、目前没有比较好的rich 客户端的解决方案 
4、 控制层和表现层有时会过于紧密,导致没有真正分离和重用 

特点:

约定大于配置
    (体现在:(control文件夹与view文件夹下的文件及文件夹命名过程)
    1、控制器命名:以controller的结尾;如HomeController
    2、控制器类将会产生一个与之同名的在View文件夹下的同名:~/View/Home
    3、控制器里的Action方法也可在视图文件夹下默认生成一个同名的视图,如:Index.cshtml)
延迟加载
    只有当使用到数据的时候,才去查询数据库。Tolist()的时候才去查。
泛型 DbQuery<T>,支持 延迟加载

【总结】

对MVC有了一个初步的认识,还需要多用。知识是用出来的,不是学出来的。那些优缺点、特点。MVC与传统三层的区别,具体如何,还需要在代码中去体会,去实践。


相关文章
|
4月前
|
Java 容器
mvc02
mvc02
26 0
|
20天前
|
前端开发 搜索推荐 数据格式
什么是MVC
什么是MVC
|
4月前
mvc03
mvc03
20 0
|
8月前
|
存储 前端开发
什么是mvc
什么是mvc
60 0
|
9月前
|
前端开发 网络架构
什么是MVC-02
什么是MVC-02
38 1
|
前端开发 Java
|
设计模式 前端开发 Java
|
设计模式 JavaScript 前端开发
浅析MVC
浅析MVC
97 0
浅析MVC
|
前端开发 程序员 API
浅析 MVC
MVC是三个字母的缩写,分别是Model(模型)、View(视图)和Controller(控制) 这个模式认为,程序不论简单或复杂,从结构上看,都可以分成三类对象。 所有的页面都可以使用MVC来优化代码结构.
148 0
浅析 MVC
|
前端开发