NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:00812
用户头像

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

关注

评论

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

Linux之Cnetos7.6安装Vue.js教程。

百度搜索:蓝易云

vue.js 云计算 Linux centos 运维

生成式 AI 的发展 | 社区征文

BROKEN

年中技术盘点

2023-07-18:给你一个正整数数组 nums,请你移除 最短 子数组(可以为 空), 使得剩余元素的 和 能被 p 整除。 不允许 将整个数组都移除。 请你返回你需要移除的最短子数组的长度,如果

福大大架构师每日一题

福大大架构师每日一题

大模型基础学习

天天向上

如何拓展自己边界

FunTester

云拨测全面升级丨单次拨测低至 0.001 元

阿里巴巴云原生

阿里云 云原生 可观测

演讲实录:以 AI 变革组织运营与管理

Kyligence

数据分析 数智化 企业级OLAP

Ubuntu 20.04系统编译安装Nginx1.22教程。

百度搜索:蓝易云

nginx 云计算 Linux ubuntu 运维

阿里云蝉联 FaaS 领导者,产品能力获最高分

阿里巴巴云原生

阿里云 云原生 函数计算

分布式系统中的数据复制

越长大越悲伤

分布式 数据复制

从零开始实现Go搜索引擎(一)

geange

搜索引擎 lucene #数据库 FST #go

点云标注中的隐私保护和数据安全问题

来自四九城儿

大语言模型的预训练[2]:GPT、GPT2、GPT3、GPT3.5、GPT4相关理论知识和模型实现、模型应用以及各个版本之间的区别详解 |社区征文

汀丶人工智能

人工智能 自然语言处理 GPT GPT-4 年中技术盘点

复杂商业变局下,半导体企业如何进行研发数字化转型|标杆案例

万事ONES

AI大模型应用开发实战营——作业1

zhihai.tu

大模型

【活动】30 秒上云体验,一键体验 RocketMQ 六大生产环境

阿里巴巴云原生

阿里云 云原生 Apache RocketMQ

代码随想录 Day21 - 二叉树(七)

jjn0703

机器学习之PyTorch和Scikit-Learn第3章 使用Scikit-Learn的机器学习分类器之旅Part 2

Alan

人工智能 机器学习 PyTorch scikit-learn

关于硬件加速器FPGA的异构加速流程&龙蜥CI框架及实践介绍 | 第 87-88 期

OpenAnolis小助手

ci 开源 sig 龙蜥大讲堂 浪潮信息

【Java技术专题】「攻破技术盲区」带你攻破你很可能存在的Java技术盲点之动态性技术原理指南(方法句柄—基础篇)

洛神灬殇

Java 技术分析

大语言模型的预训练[3]之Prompt Learning:Prompt Engineering | 社区征文

汀丶人工智能

人工智能 自然语言处理 prompt learning 年中技术盘点 prompt 工程

Linux搭建我的世界MC服务器 - MCSM面板教程。

百度搜索:蓝易云

云计算 Linux 运维 Minecraft MCSM

Ubuntu 20.04系统编译安装Apache教程。

百度搜索:蓝易云

Apache 云计算 Linux ubuntu 运维

软件测试 | Java语言的特点

测吧(北京)科技有限公司

测试

C语言如何实现DES加密与解密

智趣匠

《Programming Abstractions In C》阅读笔记p69-p71

codists

B站&华为云 | 融合虚实宇宙,开启云上视听的黄金时代

白洞计划

AI B站

笔记软件哪个好用?36款好用的笔记软件合集推荐!

彭宏豪95

效率工具 markdown 在线工具 Mac笔记软件 笔记应用

shardingsphere配置读写分离集群(1主2从结构)

zhengzai7

读写分离 ShadingSphere

Java 踩坑 2|Feign Client 访问到 Consul 脏节点/故障节点

itschenxiang

Java Consul springboot

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