天天看點

重新學.Net[一]——.Net的組成

.Net是一個廣義的名詞。它是一個平台或說是戰略。在.Net誕生之初,微軟在其一系列産品中都冠以.Net的标簽。這也給很多人帶來疑惑和不解,到底.Net中具體包含什麼?這個問題不僅是我有,我想,甚至微軟本身以及一些專家也會有。從.Net大局觀這本書的第一版和第二版的不同中,我們可以看到關于這個内容的發展。在第一版中,作者将很多内容都納入到了.Net平台的名下,而在第二版中,這個問題被明确,隻有兩個部分可以算是真正的.Net平台的組成。

一是.Net Framework。這是.Net的核心所在,它主要包括CLR(Common Language Runtime)和FCL(Framework Class Library)。每一個學習.Net的人都必須了解清楚,才能更好的開發。

二是Visual Studio.Net。這是微軟的IDE。我想在中國每一個.Net開發人員都會安裝一份的。之是以把它納入到整個.Net平台之下,也許是因為它在開發中的地位吧。至少離開了VS,我完成一個複雜的.Net程式會十分的痛苦。

說到這個問題我想起來我原來對.Net平台的一些誤解,因為我總是透過VS來看.Net。以至于我總是認為各個語言(C#,VB.Net等)都隸屬于.Net Framework的一部分。這種說法貌似正确,因為至少C#可以看成是為.Net平台量身打造的,但如果仔細想想就不是這樣的,比如現在不有PHP的CLR編譯器嗎,你不能說PHP也是.Net的一部分。恩。了解這個問題的最好方法是.Net Framework是語言無關的,隻是有些語言與它的聯系比較天然。而VS.Net中直接支援其中的幾種,包括C#,VB.Net等等。

還有一個問題就是我一直說.Net Framework包括兩部分,一部分是托管的一部分是非托管的。這樣的觀點是錯誤的,也是被VS誤導了。因為VS中可以同時開發傳統的C++程式和托管的程式。其實.Net Framework隻是包括CLR和FCL。CLR是托管的運作時,而FCL不包含MFC等東西。隻是在托管程式設計中,很有可能需要與COM互動,VS将其放在一起利于開發而已。

這就是我對.Net組成的一些了解。。。

本文轉自 duguguiyu 51CTO部落格,原文連結:http://blog.51cto.com/duguguiyu/361607,如需轉載請自行聯系原作者