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. 在Delphi中使用C++对象(转)

    源:http://blog.csdn.net/henreash/article/details/7352335 Delphi是市场上最好的RAD工具,但是现在C++占据着主导地位,有时针对一个问题很难 ...

  2. 【HighCharts系列教程】四、颜色属性——colors

    一.Colors属性说明 配置Colors,可以自定义数据列的颜色. 默认下colors就包含一系列颜色,在个性化或需要调整颜色的顺序下,我们可以配置该属性. 二.colors属性详解 Colors属 ...

  3. Contaminated Milk

    Contaminated Milk 题目描述 Farmer John, known far and wide for the quality of the milk produced on his f ...

  4. BNU OJ 51003 BQG's Confusing Sequence

    二进制++高精度取模 #include<cstdio> #include<cstring> #include<algorithm> using namespace ...

  5. iOS多视图传值方式之通知传值(NSNotification;NSNotificationCenter)

    iOS传值方式之5:通知传值 第一需要发布的消息,再创建NSNotification通知对象,然后通过NSNotificationCenter通知中心发布消息(NSNotificationCenter ...

  6. (中等) POJ 2482 Stars in Your Window,静态二叉树。

    Description Here comes the problem: Assume the sky is a flat plane. All the stars lie on it with a l ...

  7. Mac搭建Hadoop源码阅读环境

    1.本次Hadoop源码阅读环境使用的阅读工具是idea,Hadoop版本是2.7.3.需要安装的工具包括idea.jdk.maven.protobuf等 2.jdk,使用的版本是1.8版,在jdk官 ...

  8. 22、手把手教你Extjs5(二十二)模块Form的自定义的设计[1]

    下面开始设计和完成一个简单的Form的自定义过程.先准备数据,在ModuleModel.js中的data属性下面,加入自定义Form的参数定义,下面的代码中定义了一个新的属性tf_formScheme ...

  9. FZU 1063 三维扫描

    水题.DFS求连通块. #include<cstdio> #include<cstring> #include<cmath> #include <iomani ...

  10. windows server 2012 AD 活动目录部署系列(七)Active Directory 的授权还原

    域内所有的域控制器都有一个内容相同的Active Directory,而且 Active Directory 的内容是动态平衡的,也就是说任何一个域控制器修改了 Active Directory,其他 ...