.NET、C#和ASP.NET三者之间的区别与联系
1、.net(dot net)
.net是一个平台,抽象的平台概念。
实现形式是库:①定义了基本的类型(通用类型系统CTS,common type system)。
②包含.net公共语言运行库(CLK,common language runtime,负责管理用.net库开发的所有应用程序的运行)。
核心是.net framework
NET Framework包括两个关键组成元素:
a.Common Language Runtime,公共语言运行时(CLR)-提供内在管理,代码安全性检测等功能。
b..NET Framework Class Library,.NET框架类库(FLC)-提供大量应用类库,提高开发效率 。
2、C#(C sharp)
C#是一个程序设计语言,仅仅是一个语言,是运行在.net CLR上的,用于创建应用程序的高级语言。
程序设计语言仅仅是为了方便开发人员和计算机沟通的工具,虽然C#语法相对C和C++要多一些,但是相对来看C#语法都比较固定,这样使用起来却都很容易。我认可一位朋友说的,C#的语法更严谨!
这里回过来看看.NET和C#的关系,不得不提的是.NET程序的执行过程。
C#符合.NET CLR中的公共语言运行规范。CLS:common language specification,当然所有的.NET Language都是符合这个规范的例如:VB.NET、XAML和C++/CLI....等等。
C#需要符合.NET CLS,是因为.NET CLR和JAVA 虚拟机类似,有一个中间语言共机器来执行。所有不同语言的.NET代码在执行前会被编译成同样的中间语言(MSIL),所以所有.NET支持语言都必须符合符合CLS规范。
3、ASP.NET是一个网站开发的技术,仅仅是.NET框架中的一个应用模型。
ASP.NET 是用于生成基于Web的应用程序的内容丰富的编程框架。