有個初學NET同學問我關於NETC#和ASPNET的關系
因為看到很多企業招聘有的寫會NET有的寫會C#還有的寫的是ASPNET
到底它們之間有什麼聯系呢?
當時因為忙所以在這裡給他補充一份詳細的回答
NET是一個平台一個抽象的平台的概念
NET平台其本身實現的方式其實還是庫抽象層面上來看是一個平台
個人理解NET核心就只是NET Framework
NET Framework包括了兩個關鍵組成元素
Common Language Runtime 公共語言運行時
--提供內存管理代碼安全性檢測等等功能
NET Framework Class Library NET框架類庫
--提供大量應用類庫提高開發效率
具體內容可以去看MSDN Library 以上一篇文章
《NET Framework Conceptual Overview》
NET誕生的早期單純技術上來看NET和JAVA一樣可以實現跨平台
例如Mono就是NET跨平台應用得很好的項目
相當於ISO C++標准庫一樣的不過提供了更多的一些資源管理和應用庫
學習NET Framework 是所有NET 開發人員都必須的否則開發NET程序永遠都是停留在外功的招式NET Framework 是NET開發高手的內功修行之一
C#是一個程序設計語言僅僅是一個語言
程序設計語言僅僅是為了方便開發人員和計算機溝通的工具雖然C#語法相對C和C++要多一些但是相對來看C#語法都比較固定這樣使用起來卻都很容易我認可一位朋友說的C#的語法更嚴謹!
這裡回過來看看NET和C#的關系不得不提的是NET程序的執行過程
C#符合NET CLR中的公共語言運行規范CLS:common language specification當然所有的NET Language都是符合這個規范的例如VBNETXAML和C++/CLI等等
C#需要符合NET CLS是因為NET CLR和JAVA 虛擬機類似有一個中間語言共機器來執行所有不同語言的NET代碼在執行前會被編譯成同樣的中間語言(MSIL)所以所有NET支持語言都必須符合符合CLS規范
PS如果做NET XAML開發的朋友可以嘗試下ildasmexe看看XAML的應用程序會發現原來XAML其實很簡單
ASPNET是一個網站開發的技術僅僅是NET框架中的一個應用模型
用微軟公司ASPNET快速入門中的一句話來解釋ASPNET 是用於生成基於 Web 的應用程序的內容豐富的編程框架
From:http://tw.wingwit.com/Article/program/net/201311/15459.html