Visual Basic的未来之路

上周,微软宣布了他们改变Visual Basic语言未来发展计划的想法。这次公布给Visual Basic开发人员留下了很多不确定性,但Visual Basic语言的设计者Anthony D.Green说明了这个新策略的一些细节。

Green首先列出了当时使用VB进行开发的四个基础指导原则:

  • VB和C#共享的通用IDE和平台构建块。

  • 共享的“多范式、面向对象、命令式、强类型等”语言特性。

  • 在API的边界需要强大的跨语言互操作性和丰富的语言创新机会(如泛型、LINQ、异步)。

  • 客户对语言工具奇偶校验的反馈。

现在微软认为VB非常适合那些以Windows平台作为目标开发平台的开发者或者编程新手(至少,编程不是他们主要的职业)。

另一方面,非Windows平台的崛起给C#带来了一定的影响但不会影响到VB。在Green看来,VB不太适合游戏开发或者基于Mac OS X的开发。VB对于非Windows平台适应性的缺乏造成了困境,F#的开源以及C#对开源工具日益增长的支持,使得这两种语言在吸引和保留开发人员方面优于VB。越来越多的C#开发人员进入了良性循环,他们可以带来更多的进步,从而吸引更多的开发人员。

最后,Green提出了一种情况,如果保持C#与VB的开发进度和功能特性齐头并进,这对于有限的资源会产生压力。微软希望专注于C#,因为它以最快的方式提供最广泛的反馈。一旦这种反馈产生了对VB开发人员有价值的想法,微软会考虑从C#移植到VB。

这对于那些想知道他们在VB语言的投入能得到什么回报的开发者来说意味着什么?之前列出的四个原则已经被以下目标替代:工具、平台和语言。

Green说,VB的质量工具仍然是重点,并提到Visual Studio 2017中的动态单元测试如何支持VB。在平台的基础上,VB仍然会被维护以便支持.NET Core的.NET标准。VB语言本身也会增加新的功能和关键字,但前提是它们对VB是有意义的,而不仅仅是因为C#中增加了这些特性。Green举例说像UTF-8字符串就不会添加到VB中。

VB开发人员的反应非常激烈,许多人期待VB可以支持多平台,包括像HoloLens这样的微软技术。Reed Kimble写到:“这是一个鸡和蛋的问题。微软不提供某个功能是因为他们没有听到人们的要求。人们没有要求某个功能是因为微软还没有提供该功能,所以这必定意味着人们无法获得这些功能。

原文地址:http://www.infoq.com/cn/news/2017/02/vb-strategy


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/326872.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

快速排序+思路分析

图解 代码实现 package com.atguigu.sort;import com.sun.org.apache.xpath.internal.WhitespaceStrippingElementMatcher;import java.util.Arrays;/*** 创建人 wdl* 创建时间 2021/3/22* 描述*/ public class QuickSort {public static void main(String[] args) {//[-9,78,…

jquery sleep函数

function sleep(n) { //n表示的毫秒数 var start new Date().getTime(); while (true) if (new Date().getTime() - start > n) break; } console.log(new Date()); this.sleep(3000); console.log(new Date());

2017 年编程语言排行榜:Python 排第一

站长之家(ChinaZ.com) 7 月 24 日消息,近日根据 IEEE Spectrum 发布的研究报告显示,在 2016 年排名第三的 Python 在今年已经成为世界上最受欢迎的语言,C 和 Java 分别位居第二和第三位。IEEE Spectrum 的排行依据数据记者 Nick Diakopoulos …

Spring 获取 request 的几种方法及其线程安全性分析

转载自 Spring 获取 request 的几种方法及其线程安全性分析 本文将介绍在Spring MVC开发的Web系统中,获取request对象的几种方法,并讨论其线程安全性。 一、概述 在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象&…

2的负x次幂图像_数学| NO.2,3 函数 T15

点击蓝字,关注我们函数题目2020.11.30#2,3函数 T15函数发展:函数就是在某变化过程中有两个变量X和Y,变量Y随着变量X一起变化,而且依赖于X。如果变量X取某个特定的值,Y依确定的关系取相应的值,那么称Y是X的函…

AspNet Identity 和 Owin 谁是谁

英文原文:http://tech.trailmax.info/2014/08/aspnet-identity-and-owin-who-is-who/ 最近我发现Stackoverflow上有一个非常好的问题.提问者问:为什么在调用AuthenticationManager.SignIn后,claim仍然可以被添加到Identity并持久化到cookie里. 示例代码如下所示: ClaimsIdenti…

快速排序+时间测试(yyds)

package com.atguigu.sort;import com.sun.org.apache.xpath.internal.WhitespaceStrippingElementMatcher;import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date;/*** 创建人 wdl* 创建时间 2021/3/22* 描述*/ public class QuickSort {public…

bs架构 erp 进销存_从应用架构看生鲜电商信息化建设

编辑导读:对于生鲜电商来说,信息化建设是很重要的一环,所有的业务开展都离不开信息化的支持。本文作者讲从应用架构角度出发,对生鲜电商信息化建设展开分析,希望对你有帮助。一、背景语言共识之前介绍了从业务架构看生…

分布式 | Dubbo 架构设计详解

转载自 分布式 | Dubbo 架构设计详解 Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一…

完成OSS.Http底层HttpClient重构封装 支持标准库

OSS.Http项目对于.Net Standard标准库的支持已经迁移完毕,OSS开源系列两个最底层的类库已经具备跨运行时支持的能力。由于OSS.Http类库是几年前我参照RestSharp的思路,完成的一个轻量型Http请求框架。由于时间较久底层使用的还是HttpWebRequest&#xff…

归并排序+思路分析

思路分析 代码实现 package com.atguigu.sort;import java.util.Arrays;/*** 创建人 wdl* 创建时间 2021/3/22* 描述*/ public class MergeSort {public static void main(String[] args) {int arr[]{8,4,5,7,1,3,6,2};int temp[]new int[arr.length];mergeSort(arr,0,arr.len…

常数除以0的极限是什么_【极限】第四节 极限运算法则

定理 例题 极限运算法则就像加减乘除四则运算一样,是一种计算规则,那么极限也有属于它自己的一套计算规则。 极限运算法则的常用定理 定理1 两个无穷小的和是无穷小 有限个无穷小之和也是无穷小 定理2 有界函数与无穷小的乘积是无穷小 常数与无穷小的乘积…

Visual Studio 2017将于3月7日发布

继最近一连串候选发布版本之后,微软已经开始针对正式发布Visual Studio 2017做最后准备工作。微软已经宣布2017年3月7日会是VS2017官方发布时间。第一款VS软件问世于1997年,本次发布标志着产品20周年,这些年里包括了Visual J、Visual FoxPro、…

SQL Server 急救包(First Responder Kit)入门教程

如果你的SQL Server数据库运行起来十分缓慢甚至逐渐停止了,恰巧又赶上了你的数据库管理员在休假,你又不知道该如何是好,那么这篇文章会帮助你从学习使用SQL Server急救包(SQL Server First Responder Kit)开始解决问题…

IE8浏览器缓存问题导致Ajax的GET请求只能执行一次的解决办法

转载自 IE8浏览器缓存问题导致Ajax的GET请求只能执行一次的解决办法 最近在测试兼容性问题的时候发现,使用Ajax的GET请求向后台获取响应结果时,如果是IE8浏览器,第一次发送请求时会得到正常的返回结果,然后当再去发送相同请求访…

基数排序+推导过程

图解 代码实现 package com.atguigu.sort;import java.util.Arrays;/*** 创建人 wdl* 创建时间 2021/3/22* 描述*/ public class RadixSort {public static void main(String[] args) {//53, 3, 542, 748, 14, 214int arr[] {53, 3, 542, 748, 14, 214};radixSort(arr);}//基…

Xamarin的坑 - 绑定(一) - 拿微信iOS SDK 简单说起

编者语:Xamarin 并入微软快一年了,在国内推广还是慢,主要有两个方面,Xamarin在国内的本地化不足真正在国内的解决方案基本上没有,第二就是和本土的一些主要SDK接入案例基本上也没有。上述原因令不少企业放弃使用这个很…

二分查找+思路分析

思路分析 代码实现 package com.atguigu.search;/*** 创建人 wdl* 创建时间 2021/3/23* 描述*/ //注意:使用二分查找的前提是,该数组是有序的 public class BinarySearch {public static void main(String[] args) {int arr[]{1,8,10,89,1000,1234};int…

SQLServer On Linux Package List on CentOS

问题引出 “鸟儿啊,到底SQLServer on Linux肚里装了多少东西,在我们的CentOS系统安装了哪些物理文件呢?”,老鸟这天火急火燎的问道。“这个啊?让本鸟帮你一探究竟。”,菜鸟耐心回答道。 问题分析 菜鸟一边想…