1、.NET是一個平臺,一個抽象的平臺的概念。
.NET平臺其本身實現(xiàn)的方式其實還是庫,抽象層面上來看是一個平臺。
本人理解的.NET核心就是.NET Framwork。
.NET Framework包括兩個關鍵組成元素:
a.Common Language Runtime,公共語言運行時(CLR)-提供內(nèi)在管理,代碼安全性檢測等功能
b..NET Framework Class Library,.NET框架類庫(FLC)-提供大量應用類庫,提高開發(fā)效率
學習.NET Framework 是所有.NET 開發(fā)人員都必須的,否則開發(fā).NET程序永遠都是停留在‘外功’的招式,NET Framework 是.NET開發(fā)高手的‘內(nèi)功’修行之一。
2、C#是一個程序設計語言,僅僅是一個語言。
程序設計語言僅僅是為了方便開發(fā)人員和計算機溝通的工具,雖然C#語法相對C和C++要多一些,但是相對來看C#語法都比較固定,這樣使用起來卻都很容易。我認可一位朋友說的,C#的語法更嚴謹!
這里回過來看看.NET和C#的關系,不得不提的是.NET程序的執(zhí)行過程。
C#符合.NET CLR中的公共語言運行規(guī)范。CLS:common language specification,當然所有的.NET Language都是符合這個規(guī)范的例如:VB.NET、XAML和C++/CLI....等等。
C#需要符合.NET CLS,是因為.NET CLR和JAVA 虛擬機類似,有一個中間語言共機器來執(zhí)行。所有不同語言的.NET代碼在執(zhí)行前會被編譯成同樣的中間語言(MSIL),所以所有.NET支持語言都必須符合符合CLS規(guī)范。
P.S:如果做.NET 3.0 XAML開發(fā)的朋友,可以嘗試下ildasm.exe看看XAML的應用程序,會發(fā)現(xiàn)原來XAML其實很簡單。
3、ASP.NET是一個網(wǎng)站開發(fā)的技術,僅僅是.NET框架中的一個應用模型。
用微軟公司ASP.NET快速入門中的一句話來解釋,ASP.NET 是用于生成基于Web的應用程序的內(nèi)容豐富的編程框架。.net是一個開發(fā)平臺,我們可以用.net平臺用多種語言來開發(fā)不同的項目,如.net中有C#.net,有VB.net等,我們可以用它來開發(fā)桌面程序,也可以開發(fā)WEB程序(也就是WEBForm),asp.net也是其中一種項目,我們可以用C#或VB來開發(fā)asp.net項目