CLR/.NET/C#/Visual Studio/ASP.NET各版本之间的关系

时间:2022-01-21 04:07:03

标签:

名词定义

下列这些名词,写.NET 的人一定都不陌生,但你是否有真正理解呢?如果看了我的摘要文字说明还无法理解的话,建议多查询相关文件或书籍,或直接在文章最下方留言讨论。

.NET

.NET Framework 的简称,有时候泛指.NET 相关的各种技术。

.NET Framework包含一系列框架类别函式库 ( FCL ) ( Framework Class Libraries ),用来扩充BCL不足的地方。

C#

C# 6.0的csc.exe编译器改由NuGet进行安装,如需在专案中使用C# 6.0语法,则需额外安装Microsoft.CodeDom.Providers.DotNetCompilerPlatform套件。

在开发应用程式的时候又有区分「强型别」与「弱型别」的开发方式。

强型别:存取物件资料时,不需要额外转型的开发方法,凡事都用明确的型别来表达与传递资料。

弱型别:存取物件资料时,用较为抽象的型别来保存资料,需要用到资料时再透过转型得到真正的型别。

程式语言都有「语言特性」,有些C# 的语言特性会需要用到.NET Framework 的特定类别,因此C# 通常会与.NET Framework 有版本的相依性。

C# 的正确读音是C-Sharp,我曾经听过有人念成C-Hash 是错误的念法!

补充一个有趣的点,其实C#并不是写成C#,而是C?,请注意这两者的差别,,一个是垂直线是斜斜的,一个是水平线是斜斜的,后面那个才是对的,如下图示:  
 

Visual Studio

Node.js Tools for Visual Studio (NTVS)

PHP Tools for Visual Studio « DEVSENSE sro

VS.Php | PHP IDE for Windows (商用软体)

Visual Studio 通常会内建许多专案范本,而且也不会支援所有版本的.NET Framework,因此也跟.NET Framework 有版本的相依性。

ASP.NET ( ASP.NET官方网站 )

ASP.NET 自2002 年一月推出的一套网页开发框架,早期只有ASP.NET Web Form 架构,直到2009 年推出以MVC 为主的开发框架( ASP.NET MVC 1.0 ),微软预计在2016 Q1 推出ASP.NET 5 框架(基于ASP.NET MVC 的改进)。

无论ASP.NET Web Form 或ASP.NET MVC 两者都是ASP.NET 框架的一部份,共用ASP.NET 底层提供的各种函式库。

许多人会把ASP.NET 简称为ASP 其实是不洽当的,由于ASP.NET 之前的网页开发技术为ASP (Active Server Page),简称ASP 会导致沟通上的混乱。

目前已推出的ASP.NET Web Form 版本有

ASP.NET 1.0

ASP.NET 1.1

ASP.NET 2.0

ASP.NET 3.5

ASP.NET 4.0

ASP.NET 4.5

ASP.NET 4.6

目前已推出的ASP.NET MVC 版本有

ASP.NET MVC 1.0

ASP.NET MVC 2.0

ASP.NET MVC 3.0

ASP.NET MVC 4.0

ASP.NET MVC 5.x

ASP.NET MVC 6.0 ( 目前还在beta 阶段,此版本等同于ASP.NET 5 版本 )

CLR 版本关联

CLR 1.0

.NET Framework 1.0

C# 1.0

CLR 1.1

.NET Framework 1.1

C# 1.1

CLR 2.0

.NET Framework 2.0

C# 2.0

.NET Framework 3.0

C# 2.0

.NET Framework 3.5

C# 3.0

CLR 4

.NET Framework 4

C# 4.0

.NET Framework 4.5

C# 5.0

.NET Framework 4.5.1

C# 5.0

.NET Framework 4.5.2

C# 5.0

.NET Framework 4.6 ( 又称.NET 2015 )

C# 6.0

※ 注意事项※

新版的C# 编译器通常可以编译旧版的C# 原始码,也就是C# 6.0 编译器通常有能力编译C# 1.0 ~ 6.0 的程式码,但编译时一次只能选择一个版本进行编译。

.NET Framework 版本关联

若要查询.NET Framework与各版本的关系,建议可参考.NET Framework Versions and Dependencies网页的表格说明,以下为摘要说明:

.NET Framework 1.0

使用CLR 1.0 版,需搭配C# 1.0 编译器

内建于Visual Studio .NET 开发工具

.NET Framework 1.1

使用CLR 1.1 版,需搭配C# 1.1 编译器

内建于Visual Studio 2003 开发工具

推出ASP.NET 1.1 版,支援ADO.NET 资料存取技术

.NET Framework 2.0

使用CLR 2.0 版,需搭配C# 2.0 编译器

内建于Visual Studio 2005 与之后的每一版Visual Studio 开发工具

从Visual Studio 2005 开始就不再支援.NET 1.1 开发,因此开发.NET 1.1 应用程式必须安装Visual Studio 2003

推出ASP.NET 2.0 版,增强ASP.NET 功能(并且与ASP.NET 1.1 不相容),并支援泛型

.NET Framework 3.0

使用CLR 2.0 版,需搭配C# 2.0 编译器

内建于Visual Studio 2005 与之后的每一版Visual Studio 开发工具

主要针对WPF, WCF, WF, CardSpace 功能进行强化,新增许多FCL

.NET Framework 3.5

.NET Framework 4

.NET Framework 4.5

.NET Framework 4.5.1

.NET Framework 4.5.2

.NET Framework 4.6 ( 又称.NET 2015 )