NET简介
1,NET簡史
- 2000年 NET框架1.0測試版誕生。
- 2002年2月 NET框架1.0正式版發(fā)布,對應的工具為VS2002。
- 2003年4月 NET框架1.1發(fā)布,對應的工具為VS2003。
- 2005年11月 NET框架2.0發(fā)布,對應的工具為VS2005,這一版本是.NET的第一個穩(wěn)定成熟的版本。
- 2007年11月.NET3.5發(fā)布,和NET2.0相比,1).NET編程語言(C#等)被做了修改,比如增加了一些關鍵字(如var),增加了一些新的語法特性(如lambda關鍵字)。2)增加了如下新技術:WPF,WCF,WF,LINQ,對應的工具為VS2008。
- 2008年8月 NET3.5SP1發(fā)布,新增的內容:1)ADO.NET Entity Framework。 2) ADO.NET Data Service。 3)ASP.NET增加了 動態(tài)數(shù)據(jù)和路由兩個新特性。4)VS2008中集成了開發(fā)ASP.NET MVC的功能。
- 2010年 .NET4.0發(fā)布,變化內容:1)CLR從2.0升級為CLR4.0(注意:之前的.NET版本雖有變化,但CLR一直為2.0) 2)增加DLR(動態(tài)語言運行時)。對應的工具為VS2010,注意,VS2010用WPF開發(fā)。
各個版本操作系統(tǒng)中NET的集成情況:
- NET3.5集成在WIN7,WIN2008 R2中
- NET2.0集成在VISTA,WIN2008中
- 其它詳情可參看一位博友的文章:Windows 操作系統(tǒng)與 .NET Framework
2,NET簡說
- 開發(fā)一個NET程序后,需要由CLR來執(zhí)行,具體過程:開發(fā)一個C#程序--->編譯成功---->CLR執(zhí)行--->調用操作系統(tǒng)API。
- NET程序編譯后成為程序集,一般是.exe或.dll文件,這些文件里面是IL代碼和元數(shù)據(jù),這里的IL代碼和元數(shù)據(jù)以二進制形式存儲,無法直接查看,需要由反匯編器來查看,如ILdasm或Reflector。
- .exe文件或.dll文件被CLR調用執(zhí)行時,會先被JIT編譯為本地代碼,然后執(zhí)行。所謂本地代碼,就是針對你這臺計算機的CPU而生成的機器碼,所以,NET程序最終還是被編譯成二進制代碼而執(zhí)行的,與傳統(tǒng)的WIN32程序執(zhí)行一樣,但還是有一個重要區(qū)別:NET程序運行在CLR上,完全由CLR控制,即使拋出異常,也由CLR來處理;WIN32程序則直接運行在WINDOWS系統(tǒng)上面。
- NET的出現(xiàn)并不意味著我們學習成本的降低,實現(xiàn)某些復雜或底層的東西仍然離不開C/C++,我認為.NET出現(xiàn)的目的有兩個:1,對開發(fā)商而言降低開發(fā)成本,提高開發(fā)效率。2,對微軟而言,需要NET來穩(wěn)固企業(yè)市場,特別是操作系統(tǒng)、服務器的市場以及未來的新興市場。
- 客觀的講,NET能實現(xiàn)的東東,使用傳統(tǒng)技術也能實現(xiàn),不過確實比.NET麻煩些。
3,NET程序
程序類型有以下幾種:
1)WINDOWS程序,就是桌面程序、對NET2.0來說是Winform程序,NET3.0及以后推出了WPF桌面程序開發(fā)技術。
2)WEB程序,有ASP.NET應用程序,ASP.NET MVC應用程序,ASP.NET MVC的基礎是ASP.NET。
3)其它類型的程序:如WCF程序,Web Service程序,Windows服務等等。
4 NET與移動互聯(lián)網
主要是Windows Phone7及以后的版本,可以用C#,HTML5在上面開發(fā)應用。
5,NET4.0及未來
- NET4.0在CLR之上增加了DLR,允許C#等靜態(tài)語言像Python一樣具有動態(tài)特性。
- 通過NET的發(fā)展可以看出來,NET平臺具有很強的可擴展性,主要是因為其分離的設計,在應用程序和操作系統(tǒng)之間搞了一個CLR,針對CLR做各種擴展,各種修改,就會衍生出N多所謂新技術,另外語言編譯器和IL編譯器幾乎互不影響,可以獨立的修改和擴展,這也使得具體語言可以比較容易的增加新特性,比如C#中出現(xiàn)的各種簡寫,LINQ,lambda表達式等等。
NET平臺的技術太多,這里只是說了一部分。
轉載于:https://www.cnblogs.com/imap/archive/2012/03/20/2406878.html
總結
- 上一篇: 求一个qq好听网名!
- 下一篇: CssGaga 快速上手指南