QCon 演讲火热征集中,快来分享你的技术实践与洞见! 了解详情
写点什么

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

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

关注

评论

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

我是如何使计算提速>150倍的

白日梦想家

Python 代码优化 Numpy

JVM调优不知道怎么回答,阿里总结四大模块,学不会就背过来

小Q

Java 学习 架构 面试 JVM

【薪火计划】06 - 你推崇的领导方式是怎么样的?

AR7

管理

架构师训练营第二周框架设计学习总结

Geek_xq

利用 Arthas 解决启动 StandbyNameNode 加载 EditLog 慢的问题

阿里巴巴云原生

阿里云 开源 云原生 中间件 Java 25 周年

第六周作业

Griffenliu

免费下载O’Reilly出版社全新之作《建立机器学习流水线》

计算机与AI

学习

CPU飙高问题排查

程序猿玄微子

使用 Go 实现 Async/Await 模式

Roc

channel goroutines Async Go 语言

Arthas 实践——生产环境排查 CPU 飚高问题

阿里巴巴云原生

开源 云原生 中间件 Java 25 周年 Arthas

《华为数据之道》读书笔记:第 6 章 面向“自助消费”的数据服务建设

方志

数据中台 数据仓库 数字化转型 数据治理

Spock单元测试框架实战指南四 - 异常测试

Java老k

单元测试 spock

一枚程序猿的MacBook M1详细体验报告

Zhendong

Nginx的反向代理与负载均衡--配置Nginx

Linux服务器开发

nginx 负载均衡 反向代理 后端 Linux服务器

架构师训练营第 1 期 - 第 10 周 - 学习总结

wgl

极客大学架构师训练营

第六周学习总结

Griffenliu

面试无忧:源码+实践,讲到MySQL调优的底层算法实现

小Q

Java 数据库 学习 面试 算法

磁盘到底是怎样工作的?一文理解硬盘结构

Guanngxu

操作系统

三万字无坑搭建基于Docker+K8S+GitLab/SVN+Jenkins+Harbor持续集成交付环境!!

冰河

Docker 云原生 k8s

《华为数据之道》读书笔记:第 7章 打造“数字孪生”的数据全量感知能力

方志

数据中台 数字化转型

区块链开发落地,联盟链系统平台搭建

t13823115967

区块链 区块链开发落地 联盟链系统平台搭建

二分发代码模板

小兵

区块链如何助力精准扶贫?

CECBC

区块链 扶贫

Scala语法特性(三):面向对象的独特点

正向成长

特质 样例类 case class Traits

甲方日常 59

句子

工作 随笔杂谈 日常

顶层设计已基本完备 数字货币将进入加速推进阶段

CECBC

数字货币

区块链政务系统开发解决方案

t13823115967

区块链+ 区块链开发落地 政务系统开发解决方案

聊聊销售背后的策略

吴晨曦

创业 销售管理

Spring 源码学习 02:关于 Spring IoC 和 Bean 的概念

程序员小航

spring 源码 源码分析 ioc

监控之美——监控系统选型分析及误区探讨

华章IT

运维 云原生 监控 Prometheus

数字货币——货币的第四次革命

CECBC

数字货币

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