MVC的基本概念

一.NET平台下开发web应用程序的方案(方法)

方案A:
ASP.NET webForm
1.web窗体:臃肿(胖)性能低 优点:有很多的web控件可以使用,能够方便的和服务端交互(数据库)
怎么做:见ppt5

2.html :干净(瘦)性能高 缺点:只能使用html元素[客户端控件] ajax+自定义处理程序

3.razor页面 干净(瘦) 性能高 优点:使用html客户端控件
本意:剃须刀! 方便和服务端交互:html辅助方法 不支持试图状态

方案B:ajax+自定义处理程序(前端控制器方案)
怎么做:见ppt5

补充:
网站的性能:页面本身 影响很大 so big
页面:页面的模版不同

方案C:ASP.NET MVC[标准MVC 微软官方MVC]
怎么做:见ppt5

方案D:自定义MVC[多样,混合]

问题:
1..net平台下开发web应用程序的方案有哪些
2.每种方案如何实施(怎么做) 性能 开发效率
3.各有何优缺点,流行度,趋势
方案1:webForm (1 - 3 ) (早期)
方案2:ajax+自定义处理程序 (3 - 1 ) (中期)
方案3:ASP.NET MVC[标准MVC 微软官方MVC] (2.5 - 2.5) (当前)
方案4:自定义MVC[多样,混合] ????

MODEL-VIEW-CONTROLLER(MVC)

MVC的优点:
MVC可促进并行开发,便于代码重用和维护
-MVC很好的实现了
1.表示层与数据层的分离
2.表示层与逻辑层的分离
3.MVC应用程序这三个组建是松散耦合

MVC的缺点:
前期设计麻烦,性能相对较低[不分层,不划分组件]
MVC不适合小型甚至中等规模的应用程序,非常适合大型开发人员团队支持的Web应用程序,以及需要对应用程序行为进行极度控制的Web设计人员.

用在哪:
适合用在中大型以及大型项目中,需要对项目极度(全方位)控制的大项目中
不适合用在小型,中小型,中型项目中

习惯性指标:
时间,代码量,难度:1人5年 5人1年

怎么使用:
MVC是一种软件架构模式,是概念上的架构,理论上的指导,抽象 成功!
具体:MVC的具体的实现,有很多
ASP.NET MVC是MVC的一个具体的实现 具体的成功!

ASP.NET MVC 和 ASP.NET Web比较:
ASP.NET MVC和ASP.NET WEB窗体都是构建Web应用程序的
他们的基础平台是一致的,都是.NET框架(平台)
ASP.NET MVC不支持视图状态(Web控件不能用了,Web控件事件也不能用了)->web窗体是特殊的web控件

MVC的工作原理:
注:ASP.NET MVC中的url
特殊:构成 http//....../控制器名/方法名
默认:
1.Url请求直接来到Controller中
2.Controller从Model中取数据(Model可能去访问数据库)
3.Controller根据业务逻辑选择合适的View呈现给客户端
4.View返回给客户端

MVC包括以下组件:
1.模型:(模型类,实体类,实体模型类)
通常包含模型类和数据访问类(数据上下文)
2.视图:用户界面
输入提交,输出显示
3.控制器:从视图获得输入,处理,
将接过输出给视图或者反馈给模型存储

001.MVC基本概述的更多相关文章

  1. [MVCSharp]MVC# Overview概述

    MVC# Overview概述 Abstract: This article gives an overview of MVC# - a Model-View-Presenter framework ...

  2. 02 入门 - ASP.NET MVC 5 概述

    目录索引:<ASP.NET MVC 5 高级编程>学习笔记 本篇内容: 一.One ASP.NET 二.新的Web项目体验 三.ASP.NET Identity 四.Bootstrap 模 ...

  3. OAF_架构MVC系列1 - MVC的概述(概念)

     2015-04-03 Created By BaoXinjian

  4. MVC思想概述

    一. 传统Model1和Model2 Model1:整个web应用几乎全部用JSP页面组成,JSP页面接收处理客户端请求,对请求处理后直接作出响应.用少量的javaBean来处理数据库链接,数据库访问 ...

  5. MVC 设计模式概述

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/53292312) 1.MVC设计模式: 如图所示,MVC模式(Mod ...

  6. mvvm模式和mvc模式 概述总结对比

    1.mvc模式简介: MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范.例如: angular ...

  7. Spring MVC 设计概述

      MVC设计的根本原因在于解耦各个模块 Spring MVC的架构 对于持久层而言,随着软件发展,迁移数据库的可能性很小,所以在大部分情况下都用不到Hibernate的HQL来满足移植数据库的要求. ...

  8. [SPDK/NVMe存储技术分析]001 - SPDK/NVMe概述

    1. NVMe概述 NVMe是一个针对基于PCIe的固态硬盘的高性能的.可扩展的主机控制器接口. NVMe的显著特征是提供多个队列来处理I/O命令.单个NVMe设备支持多达64K个I/O 队列,每个I ...

  9. 001.Ceph简介概述

    一 Ceph简介 Red Hat Ceph是一个分布式的数据对象存储,系统设计旨在性能.可靠性和可扩展性上能够提供优秀的存储服务.分布式对象存储是存储的未来,因为它们适应非结构化数据,并且客户端可以同 ...

随机推荐

  1. Mysql 技巧

    order by条件: SELECT * FROM tablename WHERE id_one=27 OR id_two=27 ORDER BY CASE WHEN id_one=27 THEN t ...

  2. JAVA基础--异常

    异常的分类: 1. Throwable: 根类 1) Error:系统错误, 由java虚拟机生成并抛出, 无法处理 2) Exception: 所有异常类的父类, 可以处理的错误, 可以catch到 ...

  3. git diff 差异对比

    转载原文: http://fsjoy.blog.51cto.com/318484/245465/ 1. 查看当前所有的更改情况.git status 结果有3部分,changes to be comm ...

  4. background系列属性

    1.background-color背景颜色属性 ①颜色表示方法 英语单词:red   blue   purple    skyblue. rgb:r代表红色   g代表绿色   b代表蓝色    也 ...

  5. spring3mvc与struts2比较

    目前企业中使用SpringMvc的比例已经远远超过Struts2,那么两者到底有什么区别,是很多初学者比较关注的问题,下面我们就来对SpringMvc和Struts2进行各方面的比较: 1. 核 心控 ...

  6. PHP学习笔记-session

    session 在windows中的默认保存在AppDate/Local/Temp

  7. SecureCRT上传bash: rz: command not found

    SecureCRT上传bash: rz: command not found -bash: rz: command not found rz命令没找到? 执行sz,同样也没找到.     安装lrzs ...

  8. Linux进程实时IO监控iotop命令详解

    介绍 Linux下的IO统计工具如iostat, nmon等大多数是只能统计到per设备的读写情况, 如果你想知道每个进程是如何使用IO的就比较麻烦. iotop 是一个用来监视磁盘 I/O 使用状况 ...

  9. Apache处理请求步骤及过程

    Apache请求处理循环详解 : 1.Post-Read-Request阶段: 在正常请求处理流程中,这是模块可以插入钩子的第一个阶段.对于那些想很早进入处理请求的模块来说,这个阶段可以被利用. 2. ...

  10. Linux 分区和目录解析

    转自:http://www.cnblogs.com/apprentice89/archive/2012/12/17/2821332.html 计算机中存放信息的主要的存储设备就是硬 盘,但是硬盘不能直 ...