1. 程式人生 > >.NET、C#和ASP.NET三才之間的區別(轉)

.NET、C#和ASP.NET三才之間的區別(轉)

編程 tail 基於web 發現 我認 ava 微軟 框架 framwork

經常有同學會在.NET、C#和ASP.NET這三者之間區別不清楚,到底它們之間有什麽聯系呢?在這裏我給大家歸納如下:

1、.NET是一個平臺,一個抽象的平臺的概念。

.NET平臺其本身實現的方式其實還是庫,抽象層面上來看是一個平臺。

本人理解的.NET核心就是.NET Framwork。

.NET Framework包括兩個關鍵組成元素:

a.Common Language Runtime,公共語言運行時(CLR)-提供內在管理,代碼安全性檢測等功能

b..NET Framework Class Library,.NET框架類庫(FLC)-提供大量應用類庫,提高開發效率  

學習.NET Framework 是所有.NET 開發人員都必須的,否則開發.NET程序永遠都是停留在‘外功’的招式,NET Framework 是.NET開發高手的‘內功’修行之一。 

2、C#是一個程序設計語言,僅僅是一個語言。  

程序設計語言僅僅是為了方便開發人員和計算機溝通的工具,雖然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規範。  

P.S:如果做.NET 3.0 XAML開發的朋友,可以嘗試下ildasm.exe看看XAML的應用程序,會發現原來XAML其實很簡單。  

3、ASP.Net是一個網站開發的技術,僅僅是.NET框架中的一個應用模型。  

用微軟公司ASP.NET快速入門中的一句話來解釋,ASP.NET 是用於生成基於Web的應用程序的內容豐富的編程框架。

  這三者的關系是不是可以這樣認為:
  ASP.NET通過C#在.NET平臺上實現的
原文鏈接:http://blog.csdn.net/279503482/article/details/6007190

.NET、C#和ASP.NET三才之間的區別(轉)