1. 程式人生 > >.net和c#的區別2

.net和c#的區別2

1、.NET是一個平臺,一個抽象的平臺的概念。   .NET平臺其本身實現的方式其實還是庫,抽象層面上來看是一個平臺。   個人理解.NET核心就只是.NET Framework。   .NET Framework包括了兩個關鍵組成元素:   Common Language Runtime, 公共語言執行時   --提供記憶體管理、程式碼安全性檢測等等功能。   .NET Framework Class Library, .NET框架類庫   --提供大量應用類庫、提高開發效率。   具體內容可以去看MSDN Library 2003 以上一篇文章   《.NET Framework Conceptual Overview》   .NET誕生的早期,單純技術上來看.NET和JAVA一樣可以實現跨平臺。   例如:Mono就是.NET跨平臺應用得很好的專案   相當於ISO 

C++標準庫一樣的,不過提供了更多的一些資源管理和應用庫。   學習.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其實很簡單

ASP.net是微軟的.net的一種平臺框架的感覺。是一個系統平臺的感覺,他上面可以支援很多語言,他是一個伺服器端的指令碼開發環境的說。而C#是他上面的一種語言,用來編網站什麼的。它倆不是在一個級別上的東西。