写点什么

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

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

关注

评论

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

Maven 依赖调解源码解析(七):总结

xiaoxi666

maven 源码解析

如何关闭maven-default-http-blocker?

Robert Lu

Java maven

【Flutter 专题】02 图解 Mac 环境下安装配置环境

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

SAP数据中心概述

汪子熙

数据中心 Cloud SAP 11月日更

Maven 依赖调解源码解析(三):传递依赖,路径最近者优先

xiaoxi666

maven 源码解析

【系列文章】Maven 源码解析:依赖调解是如何实现的?

xiaoxi666

maven 源码解析

sockfwd 一个数据转发的小工具

Robert Lu

Go 语言

Android C++系列:Linux进程(一)

轻口味

c++ android jni 11月日更

一文带你了解HTTP

喀拉峻

网络

将 Java 应用部署到 SAP 云平台 neo 环境的两种方式

汪子熙

Cloud SAP CloudFoundry 11月日更

HiveSQL优化方法

大数据技术指南

11月日更

Maven依赖调解源码解析(二):如何调试Maven源码和插件源码

xiaoxi666

maven 源码解析

看动画学算法之:hashtable

程序那些事

Java 数据结构 算法 程序那些事 11月日更

最强最全面的数仓建设规范指南(一)

五分钟学大数据

11月日更

如何通过抓包来查看Kubernetes API流量

Robert Lu

golang #Kubernetes#

Prometheus Exporter (五)BlackBox Exporter

耳东@Erdong

Prometheus exporter blackbox exporter 11月日更

马拉车算法解最长回文子串!Manacher

老表

Python LeetCode 11月日更 算法与数据结构

架构营模块四作业

GTiger

架构实战营

模块四-考试试卷存储方案

小何

「架构实战营」

Maven 依赖调解源码解析(一):开篇

xiaoxi666

maven 源码解析

Fabric.js 画布基础功能

德育处主任

JavaScript 大前端 canvas 画布 FabricJS

k8s endpoints controller源码分析

良凯尔

Kubernetes 源码分析 Kubernetes源码 #Kubernetes#

redis sentinel 设计考试试卷

云里雾花

redis sentinel

架构实战营-模块五

瓜子葫芦侠

「架构实战营」

架构实战营-模块四作业

随风King

「架构实战营」

Maven 依赖调解源码解析(五):同一个文件内声明,后者覆盖前者

xiaoxi666

maven 源码解析

记录一次错误使用 yum 命令的尴尬

liuzhen007

11月日更

低调的采集,低调的学习,用自然资源部信息中心网站,来练习Python爬虫

梦想橡皮擦

11月日更

Maven 依赖调解源码解析(四):传递依赖,第一声明者优先

xiaoxi666

maven 源码解析

Vue进阶(贰零贰):集合 Set 和 Map

No Silver Bullet

Vue 集合 11月日更

搞定大厂算法面试之leetcode精讲2.时间空间复杂度

全栈潇晨

LeetCode 算法面试 算法刷题

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