.NET幾大熱點問題(轉)
2024-07-10 12:58:27
供稿:網友
一.什么是.net?它主要包括什么?
.net是為簡化在第三代因特網的高分布式環境下的應用程序開發,基于開放互聯網標準和協議之上,實現異質語言和平臺高度交互性,而構建的新一代計算和通信平臺。
.net主要包括普通語言運行時(common language runtime)和.net構架類庫。
二..net主要的優點有哪些?
.net的主要優點有跨語言,跨平臺,安全,以及對開放互聯網標準和協議的支持。
.net支持多種語言的互操作,即在一種語言下開發的組件,可在另一組件下通過面向對象的繼承而得以重用,目前.net支持的語言達二十多種。
.net通過將各語言先編譯成中間語言(il),然后再執行時用即時(just in time)編譯器將之編譯成本地平臺代碼來實現異構平臺下對象的互操作,目前.net支持的平臺有windows,linux和unix的支持正在開發中。
.net通過普通語言運行時(common language runtime)來實現資源對象,類型的安全。
.net通過對http,xml,soap,wsdl等internet標準的強勁支持提供在異構網絡環境下獲取遠程服務,連接遠程設備,交互遠程應用的編程界面.
三..net中的普通語言運行時(common language runtime)指什么?它在.net中處什么位置?
clr(common language runtime)普通語言運行時是整個.net framework構建的基礎,是實現.net跨平臺,跨語言,代碼安全等核心特性的關鍵。它實際上是駐留在內存里的一段代理代碼,負責在整個.net整個執行期間的代碼管理工作,比較典型的有:內存管理,線程管理,遠程管理,代碼強制安全類型等。這些都可稱得上.net framework的生命線。實際上,普通語言運行時代理了一部分操作系統的管理功能。
四..net構架類庫是什么?包括哪些內容?
.netl構架類庫是基于運行時面向對象的特性而建造的,和普通語言運行時緊密集成的一族可重用類(class)的集合。它大大簡化了軟件開發的難度,而且很容易與第三方組件無縫集成。
.net架構類庫主要包括對一下編程模型的支持:
1. 控制臺應用程序。
2. 腳本和宿主應用程序。
3. windows forms應用程序(windows 桌面gui應用程序)。
4. asp.net應用程序。
5. web services應用程序。
6. windows 服務程序
五..net支持的開發語言有哪些?.net語言的互操作性是指什么?
.net聲稱支持市面上20多種語言,但目前只有微軟官方發布的c#,visual basic.net,managed c++,和jsript,其他廠商聲稱正在開發中的支持工具有cobol,eiffel,perl,smalltalk,python。
.net語言的互操作性是指遵循普通語言運行時(common language runtime)規范的語言在對象繼承方面的支持,即用一種語言在.net平臺下開發的類可在另一語言中重用,這通過一種稱作微軟中間語言mil來實現,即語言編譯器首先將該語言編譯成微軟中間語言,再在相應平臺下編譯出本地代碼。這一切都是在普通語言運行時的規范下進行。
六..net支持的平臺有哪些?它的跨平臺實現得如何?
目前支持.net的平臺有windows 2000, nt4 sp6a, windows me和windows 98。其聲稱支持的平臺有unix,linux等,目前有三個項目正在開發linux下的.net平臺:ximian公司的mono項目,dotgnu以及 potable .net.
七..net與com的關系是什么?.net是否意味著com的終結?
com定義了組件對象間通信的二進制標準,.net通過組件內置的類型系統提供了類似的機制,它為此提供了另一個途經。.net并不意味著com的終結,但必將大大減少開發人員對com的依賴。.net 支持com和.net組件之間的互操作性,實際上可通過runtime callable wrapper(rcw)來實現在.net中獲取com組件,通過com callable wrapper(ccw)來實現在com中獲取.net組件。
八..net中的中間語言(il)是什么?它在.net平臺中起什么作用?開發人員可以用中間語言(il)編程嗎?
.net中的中間語言是指可以在普通語言運行時規范下,.執行時通過即時(just in time)編譯器轉化為本地代碼的,與cpu獨立的一族指令集合。它在.net平臺中是實現語言互操作的一個核心環節,所有.net平臺的語言都要先被編譯成中間語言(il)。程序員也可以直接利用中間語言(il)來編程,但不推薦那樣做,中間語言對理解.net對象某些行為和程序的調試很有幫助
九..net中的自動垃圾收集是什么?它給.net平臺下的編程帶來什么變化?
.net垃圾收集器負責整個.net運行時受管代碼的內存分配與釋放任務。它通過一定的優化算法來選擇收集的對象和時間。程序員只有在釋放大量受管資源時可以進行立即強制垃圾收集,在釋放非受管資源時采用終止化(finalize)操作來處理,需要在程序運行中釋放的應該實現dispose()方法,并明確調用。其它時間將資源的回收交由.net垃圾收集起來做。
十..net的受管(managed)代碼與非受管(unmanaged)代碼指什么?他們的編碼有什么區別?
.net的受管代碼(managed code)是指符合普通語言運行時(common language runtime)規范,在內存中受運行時代碼代理進行內存管理,線程管理,遠程管理,代碼強制安全類型的代碼。非受管代碼指對內存,文件,數據庫等非受管資源進行操作的代碼,他們通常不受運行時代碼代理管理,是不安全的。對受管代碼的編程只需專注于編程的邏輯,對于內存等資源的管理交由普通語言運行時(common language runtime)來負責,而對非受管代碼的編程,則要開發人員精心負責各種非受管資源的分配和回收工作。
十一. .net平臺上的開發工具有哪些?目前發展到什么階段?
.net平臺上的開發工具目前只有微軟官方的visual studio.net,其它delphi.net 及linux下的開發工具正在開發中。visual studio.net目前處于最后的beta2測試狀態,它將在2001年下半年隨著visual studio.net的推出而發展到成熟的企業版。
目前可下載的beta2版本地址:
.net framework sdk:
http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true
visual studio.net beta版本(注冊用戶):
http://msdn.microsoft.com/vstudio/nextgen/beta.asp
十二. .net的網絡資源有哪些?
1 www.dotnetwire.com 第三方的.net門戶網站
2.www.microsoft.com/net 微軟的.net門戶網站
3.msdn.microsft.com/net 微軟的開發人員.net門戶網站
4.www.csharpindex.com c#門戶網站
5.www.dexv.com/dotnet 老牌程序員網站的.net專版
6.www.c-sharpcorner.com c#門戶
7.www.asp.net 微軟的asp.net,webservice的門戶網站
8.www.gotdotnet.com 微軟的team組建的.net網站
9 www.dotnetbooks.com .net最新圖書門戶網站
10 discuss.develop.com 人氣最旺,技術最強的國外.net論壇
中國最大的web開發資源網站及技術社區,