(此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注。)

由于最初的ASP.NET 5测试版并未支持VB,导致社区有一种声音:觉得VB将死。今天我们就来简单的讨论一下这个有意思的话题。

我入门计算机编程就是初三的时候从一本GWBasic教程开始的,后来学习QB,VB。大学毕业前去考的MCSD也是VB语言。虽然在.NET平台上一开始就是以C#为主,其中只是把VB6移植到.NET上用过VB.NET。不过对VB还是有感情的,对VB也一直比较关注。今天InfoQ中文站的一篇文章《Visual Basic被群众的呼声所挽救》提醒我应该谈谈这个话题。

一直以来VB.NET的语言特性的变更往往落后于C#,而且给人的感觉也是VB.NET的使用场合越来越少。尤其,在ASP.NET 5的最初测试版本中,并未提供VB.NET的支持,导致人们一度认为微软要放弃VB了。甚至,在Build大会召开前,微软一个内部邮件列表中,一个名为“Death of VB”的邮件引起很多人的跟帖。也有人发出了“Help us to keep Visual Basic alive”的呼声。这次关于VB的讨论太过激烈,连Scott Hanselman都不得不出来提前在Build 2015大会之前放出ASP.NET 5会支持VB的消息(不管当时是NDA,我也无法把这个消息提前转发给大家)。有意思的是Miguel de Icaza跟帖提到“F#被微软当作一个科研语言,而他的真正力量没有发挥出来,VB和C#应该多吸取Swift和F#的创新,且每个开发人员都应该用用它”。

随后,VB开发团队也在官方博客上发布了一篇题为“Making It Better: ASP.NET with Visual Basic 14”的介绍文章来介绍了一些VB14针对ASP.NET的新特性:

  • 字符串插值让Web Forms的字符串更像Razor语法
  • 可以在MVC中使用新加入的NameOf操作符来验证参数
  • 在Web Forms中支持异步模型绑定
  • 支持使用Roslyn来编译VB
  • ASP.NET 5支持VB

另外,VB开发团队还有另外两篇文章介绍了把VB的语法改成小写格式,一种是通过Roslyn来添加自定义编译服务支持特殊语句关键字,另外一种是通过模板转换的方式。有兴趣的可以“阅读原文”来查看第一篇文章(里面有第二篇文章的链接)。

原文链接:http://blogs.msdn.com/b/vbteam/archive/2015/04/01/how-roslyn-finally-unshackled-visual-basic-from-the-tyranny-of-the-pretty-lister.aspx

VB已死?还是会在Roslyn之下焕发新生?的更多相关文章

  1. wp已死,metro是罪魁祸首!

    1.这篇文章肯定会有类似这样的评论:“我就是喜欢wp,我就是喜欢metro,我就是软粉“等类似的信仰论者发表的评论. 2.2014年我写过一篇文章,windows phone如何才能在中国翻身? 我现 ...

  2. 泰泽新闻:英特尔三星双否认泰泽Tizen系统已死

    7月8日 据媒体TizenExperts报道,关于“Tizen系统跳票”的传闻已经遭到了英特尔和三星否认. 此前传闻三星自行研制的智能手机Tizen操作系统流产,但如今已经遭到了官方的否认. 英特尔三 ...

  3. Android首席设计师宣称移动概念已死,开发人员应该面向屏幕编写应用而非移动

    腾讯科技对Android首席设计师Duarte"移动已死"訪谈内容的翻译错得离谱,被到处转载,误人视听. 而要真正理解Duarte所想表达的含义,须要深入了解互联网前沿设计理念以及 ...

  4. MVC模式已死

    MVC模式:Model模型 View试图 Control控制器,是目前主流模式,被当作服务器软件入门基本模式学习和掌握,主流框架Struts 1/2 JSF Wicket基本都顺理成章支持MVC模式. ...

  5. 王垠:Lisp 已死,Lisp 万岁!

    王垠:Lisp 已死,Lisp 万岁!_IT新闻_博客园 王垠:Lisp 已死,Lisp 万岁!

  6. JVM学习记录-对象已死吗

    前言 先来回顾一下,在jvm运行时数据区,分为两部分,一个部分是线程共享区,主要包括堆和方法区,另一部是线程私有区分包括本地方法栈,虚拟机栈和程序计数器.在线程私有部分的三个区域是随着线程生和灭的.栈 ...

  7. [转载]致创业者:APP已死 服务永生

    前几日,有位创业者和我讲他在带领团队做一个将爱踢球的人集中在一起的App,我告诉他你的创业方向错了.原因在于你的目的是要为爱踢球的人提供服务,而你现在却在竭尽全力的做App,你应该做的是设计你为爱踢球 ...

  8. Jeff Atwood:软件工程已死?

    原文作者:Jeff Atwood 2009年7月,Tom DeMarco在<IEEE Software>杂志上发表了一篇论文,题为"Software Engineering: A ...

  9. NLP领域的ImageNet时代到来:词嵌入「已死」,语言模型当立

    http://3g.163.com/all/article/DM995J240511AQHO.html 选自the Gradient 作者:Sebastian Ruder 机器之心编译 计算机视觉领域 ...

随机推荐

  1. Nginx 服务器性能参数设置

    Nginx服务器性能调优 Nginx 配置文件 1.根据CPU内核数设置worker进程个数,以12核CPU为例,设置11个worker进程: worker_processes 11; worker_ ...

  2. 10 steps to becoming the developer everyone wants

    You thought it was all about programming skills. But you were wrong! Great code is fine, yet command ...

  3. 字符串模拟赛T1

    // source code from laekov for c0x17 #define PRID "bxjl" #include <cstdio> #include ...

  4. c++中的srand()和rand() 转载 自:http://blog.sina.com.cn/s/blog_624c2c4001012f67.html

    今天看了同事写的小程序,发现了其中出现了srand()和rand()这两个我以前没有用过的函数,当然从名字可以看出肯定能随机数有关,于是网查资料知这两个函数配合一起使用来产生随机数的,哈哈,又长知识了 ...

  5. [BZOJ4632]树的编码

    [BZOJ4632]树的编码 试题描述 SHUXK 正在对一棵N个结点的有根树进行研究,首要的一件事就是对这棵树进行编码. lz 说:“这还不容易吗?我令根节点的编号为 1,然后保证每个结点的编号都比 ...

  6. HDU 2897

    Problem Description 当日遇到月,于是有了明.当我遇到了你,便成了侣. 那天,日月相会,我见到了你.而且,大地失去了光辉,你我是否成侣?这注定是个凄美的故事.(以上是废话) 小t和所 ...

  7. Linux 在 i 节点表中的磁盘地址表中,若一个文件的长度是从磁盘地址表的第 1 块到第 11 块 解析?

    面试题: 在 i 节点表中的磁盘地址表中,若一个文件的长度是从磁盘地址表的第 1 块到第 11块,则该文件共占有 B  块号.A 256 B 266 C 11 D 256×10 linux文件系统是L ...

  8. 关于C语言的printf输出问题

    前端面试的时候老总居然问这个问题,有点震惊…… #include <stdio.h> #include <stdlib.h> void main() { ; printf(&q ...

  9. 开发Web Service的几种方式

    本文作者在学习使用Java开发Web Service(不包括Restful)时,由于不知道Java有这么多框架支持开发Web Service一度陷入迷惘,不知道这些框架各有 什么不同,各有什么优缺点. ...

  10. DOS命令符基本操作

    怎么改变DOS默认路径 开始->所有程序->附件->命令提示符,在“命令提示符”上右键,选择“属性”,(或者在快捷方式上点击属性)会弹出一个“命令提示符 属性”对话框,可以通过修改该 ...