50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Visual Basic 10 介绍

  • 2007-05-07
  • 本文字数:1157 字

    阅读完需:约 4 分钟

随着 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 中文站贡献内容,请邮件至 china-editorial@infoq.com

2007-05-07 23:001376
用户头像

发布了 254 篇内容, 共 69.0 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

Qz学算法-数据结构篇(哈希表)

浅辄

数据结构 三周年连更

好用的Angular组件库有哪些推荐的?TinyNG好用吗?

英勇无比的消炎药

开源 前端 angular OpenTiny

华为ISDP数字化现场作业在第十七届工程建设行业信息化发展大会亮相,备受企业瞩目

轶天下事

SQL数据库管理:RazorSQL 激活版

真大的脸盆

Mac 数据库管理工具 Mac 软件 数据库软件

Hi3861开发板入门

鸿蒙之旅

OpenHarmony 三周年连更

Java面向对象程序设计|二人间对话示例

TiAmo

Java 三周年连更 点对点通信 socket通信 面向对象程序设计

AI不会取代打工人,使用AI的人才会! | 社区征文

王中阳Go

程序员 AI GPT ChatGPT 三周年征文

面面俱到!百度出品2023版Java面试指南,囊括面试所有硬核技能

程序员小毕

程序员 后端 架构师 java面试 八股文

Unity 之 实现背景图动态适配不同分辨率

陈言必行

Unity 三周年连更

如何用 Go 实现一个配置包

江湖十年

跨平台应用开发进阶(五十八):短链基本工作原理与实现方案

No Silver Bullet

短链接 跨平台应用开发 三周年连更

华为ISDP数字化现场作业:数字化转型助力电力行业安监风险管控

轶天下事

推荐一些好用的ChatGPT扩展工具

石云升

ChatGPT 三周年连更

Unity手机游戏开发:从搭建到发布上线全流程实战

海拥(haiyong.site)

三周年连更

华为ISDP工单宝应邀参加第十七届工程建设行业信息化发展大会

轶天下事

企业号 5 月 PK 榜,火热开启!

InfoQ写作社区官方

热门活动 企业号 5 月 PK 榜

Matlab实现蚂蚁群算法

Shine

三周年征文

当生成式AI照进医疗,医患关系将何去何从?

脑极体

AI

Redis Set 用了 2 种数据结构来存储,到现在才知道

Java你猿哥

Java redis string HashMap底层原理

躬身入局的数科公司,为本就拥挤的数智化赛道带来了什么?

用友BIP

用友iuap 用友技术大会 数科公司

什么是软件开发领域的 obsolete 或者 deprecated 含义

汪子熙

软件开发 三周年连更

企业级统一数据平台建设思路

星环科技

数据平台

6个优化策略,助你降低K8S成本

SEAL安全

k8s 成本管理

保姆教程 | 用GPU云主机搭建AI大语言模型并用Flask封装成API,实现用户与模型对话 | 京东云技术团队

京东科技开发者

flask gpu GPU服务器 企业号 4 月 PK 榜 AI大语言模型

【Linux】中安装pip(详细教程)

A-刘晨阳

Python Linux 运维 pip 三周年连更

Spring Boot如何获取Excel sheet页?

bug菌

Spring Boot spring-boot 三周年连更

【源码分析】【seata】at 模式分布式事务 -rm 实现逻辑

如果晴天

源码分析 分布式事务 seata Seata框架

低代码+智能化,企业数字化提速的又一场革命

科技热闻

微信小程序开发限制

肥晨

三周年连更

使用 Flomesh 服务网格进行流量拆分

Flomesh

微服务 Service Mesh 服务网格

大数据时代数据化转型的多种模式

星环科技

Visual Basic 10介绍_.NET_Jonathan Allen_InfoQ精选文章