写点什么

Visual Basic 被群众的呼声所挽救

  • 2015-05-08
  • 本文字数:1818 字

    阅读完需:约 6 分钟

当.NET 刚刚发布时,Visual Basic 与 C#在社区中的基础是平起平坐的。但经过了多年的发展之后,微软正在逐渐地走向淘汰 VB 的方向。在 2008 年左右,VB 的未来首次遭受了质疑,而当时的结果是微软承诺了 C#与 VB 的同步发展

但随着 Windows Phone 7 的推出,人们也开始怀疑这个承诺的有效性,因为它直到2010 年9 月才开始支持VB 。而之后,微软在他们的专业开发者认证项目中悄悄地取消了VB,使得质疑声再度出现。

最近,社区发现在即将到来的ASP.NET 5 中居然不打算支持VB,这无疑是一次侮辱。这一决定不仅违背了两门语言共同发展的承诺,而且还是在完全没有任何公开宣布的情况下做出的。去年12 月,有人专门因为不支持Visual Basic 这一事实提交了一个bug

自那时起,Visual Basic 的用户们终于觉醒了。虽然在博客社区中并没有召集到很大数量的代表人数,但他们还是通过正式渠道劝说微软在ASP.NET MVC 中为VB 提供完整的支持。 Jeffrey T. Fritz 这样写道:

从一次公开谈论 ASP.NET 5 的时候,我们就表示它是对于 ASP.NET 框架的一次主要升级,Roslyn 的使用与跨平台的理念贯彻其中。实现这一点有很长的路要走,我们专注于首先在 C#上实现完整的支持。自从我们首次公布这一项目之后的几个月以来,我们听取了各位的意见,了解了你们对 Visual Basic 的热爱,也知道你们希望在 ASP.NET 5 中看到对它的支持。

今天,我们很高兴地宣布 ASP.NET 5 将完整地支持 Visual Basic(包括工具与运行时两方面,甚至还包括跨平台的运行时支持)。一如以往的是,我们将继续保持 ASP.NET 5 开发的公开性,你可以在 GitHub 的项目 http://github.com/aspnet/home 中跟踪我们的进展,或是贡献你的力量。

许多开发者对此发出疑问,现在还有什么新的工作会选择使用 Visual Basic 吗?Michel Posseth 在回答中说道:

我在单位里平均一个月之内至少要完成两个(使用 VB 开发的)项目!:-)

在我的单位中,所有的开发工作都是在 VB.Net 2013 旗舰版中完成的,使用的框架版本是 4.5.2。而且我们还用到了 WPF、MVVM(使用一种最纯净的方式),我们也会使用 Entity Framework 6.x,而且我们也会使用 MVC 和 Razor,甚至在开发应用时也使用 VB。没错,所有的一切都是用 VB.NET 开发的,并且我们将 option explicit , option strict 和 option infer 这些选项全部都打开了!

[……]

还请大家注意,作为 VBDotNetCoder 的管理人和创始人,我能够看到 VB.NET 如今正在不断壮大发展!尤其是在南美、希腊、西班牙与意大利等地……是的,我认为 VB.NET 有希望在今后几年内迎头赶上 :-),人们会认识到,对于业务的开发来说,它是一个更好的快速应用开发环境与调试环境。

在可见性方面,pcnerd 有这样一个理论,

我认为真正的问题在于 VB.NET 通常是用于企业内部开发的,不允许将反馈发送回微软。同时也很少用于新项目,多数只是添加新功能。我目前所参与的项目代码是在.NET 2.0 出现之前设计的,即使它现在运行在.NET 4.5 上,也能够感觉到它的陈旧感。另一方面,在上一个项目中,我一开始甚至没办法在 Visual Studio 中打开这个 VB 项目。我不得不转而寻找某些通用的方案,将其修改为 VB。你可能会说我们的技术不够前沿,但我使用的技术包括 Web Api、Razor 和 Angular,用基于 OWIN 的 Katana 进行托管,甚至在安全性方面使用了 Web Tokens。想象一下,它全部是用 VB 和 JavaScript 完成的!

尽管微软已经作出了声明,但某些开发者的感觉依然很不好。Chris Owens 写道:

听说 VB.NET 在 ASP.NET 5 中能够得到与 C#平等的地位,这是一件好事。但令人伤心的是,许多来自微软的 C#粉丝的心态有问题,比方说 Stephan Walther 曾有一番刻薄的言论,他说现在最多只有两个人还在用 VB.NET 进行 ASP.NET MVC 的开发,他们也应当停手了。同样令人难过的是为什么对 VB 的支持会成为一种疑问,在企业中还有数以千计的开发者在使用 VB.NET,而微软在事后才想到他们。我们也必须等到新版本完整发布之后才能够使用它。

如果能够使用 VB.NET 尝试一些预发布的东西就好了,因为我至少有 95% 以上的时间都是在用它进行 MVC 等项目的开发……而现在,我只能落后于其他人,等待在正式发布时支持 VB.NET 了。不过我依然确信 C#的粉丝会确保所有的示例都只有 C#版本,与往常一样,并且继续编织着 VB.NET 已经无人使用的童话。微软一方面在继续支持 VB.NET,一方面又假设已经没人用它了,这种行为让我感觉很痛苦。

查看英文原文: Visual Basic: Back by Popular Demand

2015-05-08 02:549315
用户头像

发布了 428 篇内容, 共 193.4 次阅读, 收获喜欢 39 次。

关注

评论

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

JAVA-Android-多线程实现方式及并发与同步

android 程序员 移动开发

Jetpack-在数据变化时如何优雅更新Views数据

android 程序员 移动开发

Jetpack系列(一) — Navigation

android 程序员 移动开发

Gson用户指南

android 程序员 移动开发

Http详解

android 程序员 移动开发

IOC架构设计之Dagger2架构设计(三)

android 程序员 移动开发

HashMap源码分析 —— 一篇文章搞定HashMap面试

android 程序员 移动开发

Jaxb2 实现JavaBean与xml互转

android 程序员 移动开发

Jetpack系列——ViewModel

android 程序员 移动开发

Http 状态码详解

android 程序员 移动开发

JetPack现在都成了Android开发必备技能嘛?

android 程序员 移动开发

Java 创建型模式:单态模式,原型模式,工厂方法

android 程序员 移动开发

JETPACK-COMPOSE-ALPHA-版现已发布!

android 程序员 移动开发

Koltin47

android 程序员 移动开发

JETPACK-COMPOSE-ALPHA-版现已发布!(1)

android 程序员 移动开发

JS Bridge实现

android 程序员 移动开发

HTTPS详解

android 程序员 移动开发

Java线程(十):CAS

android 程序员 移动开发

Jetpack Compose 1

android 程序员 移动开发

JNI 与 NDK 入门(一)

android 程序员 移动开发

HashMap及HashTable源码解析

android 程序员 移动开发

IOS开发之——事件处理-hiTest(69)

android 程序员 移动开发

Java的Url编码和解码

android 程序员 移动开发

IOS开发之——CABasicAnimation(95)

android 程序员 移动开发

Java 网络:InetAddress类的应用以及通过Socket实现TCP编程

android 程序员 移动开发

Java之JNI初步认识

android 程序员 移动开发

Fabric.js 从入门到________

德育处主任

大前端 可视化 canvas 画布 FabricJS

Koltin28

android 程序员 移动开发

hencoder学习自定义view(1)

android 程序员 移动开发

hook(1)入门篇

android 程序员 移动开发

HTTPS工作原理以及Android中如何防止抓包

android 程序员 移动开发

Visual Basic被群众的呼声所挽救_语言 & 开发_Jonathan Allen_InfoQ精选文章