.NET、C#和ASP.NET、ASP.NET MVC四者之间的区别

什么是.NET?html

.NET是微软公司下的一个开发平台,.NET核心就是.NET Framwork(.NET框架)是.NET程序开发和运行的环境,在这个平台下能够用不一样的语言进行开发,由于.NET是跨语言的一个平台。语言能够是C#,f#,j#,vb.net等等。顺便说一下sum公司的JAVA和.NET不一样的一点是java是跨平台的,不跨语言的。.NET跨平台仅限于安卓系统和IOS苹果系统。java

1..net框架的组成分为两部分:CLR:公共语言运行时,-提供内在管理,代码安全性检测等功能数据库

              FLC:.NET框架类库,类库中有不少线程的资源可以使用(好比:类,方法,属性),提供大量应用类库,提升开发效率编程

2.CLR的结构:CLS:公共语言规范,获取各类语言转换成统一的语法规范。c#

        CTS:公共类型系统,将各类语言中的数据类型转换成统一的类型设计模式

       JIT:实时编译器(即时编译器)用于将转换以后的语言编译为二进制语言,交给CPU执行。安全

3 .NET运行的机制流程网络

各类语言(c#,F#,j#等对应的源程序)——-—通过CLS,CTS第一次编译———————>统一规范语言(中间语言)MSIL(.EXE,.DLL)————JIT第二次编译————>二进制语言——————>运行在CPU中多线程

java的运行机制架构

.java————编译———>字节码文件(.CLASS)———jvm解释(jvm虚拟机)———>二进制语言——————>运行在CPU中

 

4.C#是一个.NET平台下的一个程序设计语言,只是一个语言,仅此而已。 程序设计语言是为了方便开发人员和计算机沟通的工具。 从上面.net的运行机制流程就能够看出C#和.NET之间的关系,画面阅读者本身进行补脑想象吧!                                                                                                                                                                 

5.ASP.NET是一个网站开发的技术,是.NET框架中的一个应用模型。(历史挺长远的)使用ASP.NET开发Web应用程序并维持其运行,比其余开发语言更加简单。与Java、PHP和Perl等高级技术相比,ASP.NET具备方便性、灵活性、生产效率高、安全性高及面向对象等优势,是目前主流的网络编程技术之一。 

 

6.关于ASP.NET MVC,刚开始接触这个技术的时候我常常不理解他们的名字,我相信许多学ASP.NET开发人员开始接触MVC应该也和我同样产生不少为何,也会误认为认为MVC与ASP.NET彻底没有关系,是一个全新的Web开发,深刻学习后我才知道事实上ASP.NET是建立WEB应用的框架而MVC是可以用更好的方法来组织并管理代码的一种更高级架构体系,因此能够称之为ASP.NET MVC。咱们可将原来的ASP.NET称为 ASP.NET Webforms,新的MVC 称为ASP.NET MVC。

MVC是软件架构的一种模式,能够说就至关于咱们常说的设计模式吧。其中主要包括三个模块,顾名思义。就如MVC名字所显示的那样:模型(Model),视图(View),控制器(Controller)。mvc中的模型(Model)和视图(View )是彻底区别于三层架构中的模型(Model)和视图(View)的。    

MVC中模型(Model)的特色:

①有对数据直接访问的权利,如:对数据库的访问;

②模型(Model)“不依赖”视图(View)和控制器(Controller),即模型(Model)不关心它会被如何显示或者如何被操做;

③模型(Model)中数据的变化通常会经过一种刷新机制被“公布”;

④为了实现③中的“机制”用于监视此模型的视图必须事先在此模型上注册。从而,视图能够了解在数据模型上发生的改变。

视图(View),这里的视图基本跟三层中的视图同样,都是为了显示数据,没有程序上的逻辑。为了实现视图上数据的刷新,视图(View)须要访问它监视的模型(Model),因此应该事先在被它监视的数据那里进行注册。

控制器(Controller),这个概念是在三层中不存在的概念。它主要起到不一样层面的组织做用,用于控制应用程序的流程。主要处理事件并做出相应操做。

 

原文出自http://www.javashuo.com/article/p-mglzvdvn-bs.html

相关文章
相关标签/搜索