国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

全面剖析VB.NET(5)

2024-07-10 13:05:18
字體:
來源:轉載
供稿:網友
五、公共運行時環境
    迄今為止,業界對vb.net討論得最多的特色或許就是clr。vb.net運行在clr之上,正是clr為vb.net帶來了許多關鍵的新特色(包括缺點在內)。例如,clr使得vb.net支持跨語言的繼承以及自由線程。
  
    在vb6中,分布式vb程序要求有vb運行時庫msvbvm60.dll支持,即該運行時庫必須隨同應用一起分發。其他許多語言,比如c++和java,也有類似的要求。在.net中,所有visual studio語言共享同樣的運行時環境clr。改用clr帶來了幾個重要的結果:現在所有visual studio語言都共用同樣的ide、同樣的窗體引擎、同樣的異常處理機制,等等。它意味著visual basic在很大程度上已經可以和.net的其他語言相提并論,如c#等。然而,對于clr的異議仍舊存在,vb業界仍在激勵地爭辯它地價值。
  
    不管應用是用vb、c#還是其他.net語言編寫,所有vs.net代碼都是編譯成中間語言(intermediate language,il)。當應用運行時,一個實時編譯器(just-in-time compiler,或稱為jit)就把il代碼編譯成機器語言。在理論上,它意味著為非windows的平臺構造.net運行環境是可能的,但目前還沒有出現有關這類系統的正式消息。il有一個缺點:正如vb在5.0以前的版本,il代碼對于類似的反向編譯工程很敏感。由于存在這種可能性,許多開發者對于.net框架的整體安全性抱有懷疑。
  
    對clr進行優化影響il層次上的代碼,它使得所有使用clr的語言受益。然而,對于特定語言的優化涉及到如何把代碼編譯成il代碼,它根據特定語言的語法進行。因此,.net各種語言之間存在一定的性能差異是必然的。但不管如何,從整體上來看這仍舊是好事,例如clr為vb帶來了和c#一樣的調試和分析工具——之所以能夠如此,是因為它們都使用一樣的工具。
  
    clr提供了前所未有的跨語言集成能力,其中包括跨語言繼承代碼的能力。所有使用clr的語言都使用一個公共類型系統(common type system),它使得開發那些運用多種語言的應用變得更為容易。
  
    在clr之內運行的代碼稱為“受管理的代碼”(managed code),受管理代碼所使用的內存由clr全面控制。受管理的代碼有著許多優點,包括交叉語言集成、跨語言異??刂埔约耙粋€組件交互的簡化模型。visual basic.net只能以受管理代碼方式運行,與此相對應,c#卻具有將代碼轉入非受管理方式運行的能力(運行在clr之外),比如執行指針處理之類的操作。這是vb.net不能與c#相提并論的地方之一。然而,這種能力的是否重要,對于不同的人、不同的用途來說都有所不同。
  • 網站運營seo文章大全
  • 提供全面的站長運營經驗及seo技術!
  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 靖安县| 时尚| 冷水江市| 苍山县| 团风县| 中江县| 和林格尔县| 醴陵市| 股票| 瑞安市| 甘洛县| 沁水县| 诸城市| 双辽市| 格尔木市| 安图县| 芦溪县| 嵩明县| 公主岭市| 新兴县| 大英县| 壤塘县| 定西市| 六盘水市| 米易县| 泽普县| 嫩江县| 石棉县| 周口市| 西青区| 修文县| 曲沃县| 古浪县| 新安县| 大余县| 卫辉市| 凌云县| 巍山| 榆中县| 肇州县| 磐石市|