Visual Basic 10介绍

随着VB9将在今年某个时候发布,微软也开始谈论起VB10了,即通常所说的VBx。VBx 的关键特性包括了大家希望的在Lisp,Ruby或者Python中存在的动态代码生成功能。这将开拓一个能使用VB.NET来开发 SilverLight和Office(目前要使用VB.NET开发Office程序都必须通过VSTO来实现,或者使用古老的VBA来访问Office 的相关API,译者注)应用程序的新时代。

VB9,存在于Orcas Beta 1当中,已经具备我们能谈论好几年的LINQ特性了。使用VB9编译的函数库也能够像其他.NET兼容的DLL那样被SilverLight使用。

VB10利用了一个称为Dynamic Language Runtime(简称作DLR)的SilverLight特性。DLR是一个基于Common Language Runtime(CLR)之上的扩展,用于支持多种动态语言,并为动态语言实现提供了一个通用的对象模型。

像其他动态语言一样,DLR将允许VB10的代码被即时的编译(compile on the fly)。一旦VB10和SilverLight组合在一起,就意味着VB的源代码可以在浏览器运行的时候被下载和编译,这样可以实现很多在AJAX和其他客户端Web应用程序中运用到的类似技术。

一个重要的开发任务是开发一个新的VM(虚拟机)编译器。不像早期的VB编译器,使用C++来开发,VB10将使用VB来开发自己的编译器。这样编译器就能运行于CLR之下,并能获得SilverLight所承诺的跨平台特性。

当前,在Windows下开发Office的宏程序依旧使用年代久远的VBA。对于OS X下的Office宏程序开发,甚至没有支持。随着DLR特性的支持,VB10将有可能最终代替VBA成为Office下宏程序的开发语言。

另外一个VB10可能具有的特性是:REPL(Read-Eval-Print loop)(REPL是一种在交互模式下编程的环境,就是Python等语言具有的命令行功能,或者可以说类似于QuickBasic那样的命令行功能, 当然QuickBasic是解释执行的,Python等是即时编译的,译者注)。REPL是一个在动态语言中很流行的功能,在REPL环境下,代码在输入后就马上运行。当前,在Visual Studio中有一个很类似REPL的简单功能,即“即时窗口”,但是它不能脱离VS单独运行。

可惜的是,当前的SilverLight 1.1 Alpha 1还不能使用VB10来开发。不过我们可以在今年的PDC(Professional Developer Conference)的时候好好感受一下VB10预览版的魅力。

查看英文原文:VS Express Editions Orcas CTP Available

译者简介:朱永光,IT自由人和环境保护者,微软最有价值专家(MVP)和MCSD。他有14年的编程实践经历,5年软件构架和开发管理经验,擅长微软相关技术和产品,目前主要关注软件构架和开发框架,是成都.NET俱乐部副主席和核心讲师,个人博客为http://redmoon.cnblogs.com。现在他作为共同创始人经营着一家环境保护技术公司。为InfoQ中文站贡献内容,请邮件至[email protected]

你可能感兴趣的:(Visual Basic 10介绍)