选择显示字体大小

全面剖析vb.net(5)

     五、公共运行时环境
    迄今为止,业界对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业界仍在激励地争辩它地价值。
  
    不管应用是用vbc#还是其他.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#相提并论的地方之一。然而,这种能力的是否重要,对于不同的人、不同的用途来说都有所不同。
    


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons