从C#切换到VB.Net

从C#切换到VB.Net,.net,vb.net,c#-3.0,.net,Vb.net,C# 3.0,我不确定这是否是个骗局。我遇到了这个 我的情况正好相反。我将从C#转到VB.Net。更准确地说,我将从C#3.0迁移到VB10.0(.NET3.5到.NET4.0)。我最初计划使用C#到VB的转换器来处理语法 如有其他建议,我们将不胜感激 我并不反对VB.Net(我经常在它里面工作),但这听起来像是一个严重限制职业发展的举动。我猜你觉得C#太难了,只是个初学者。我给你的建议是坚持下去,这样会容易些。与VB.NET作业相比,还有更多的C#.NET作业 也就是说,找出等价语法(可能是最便宜的)最简单

我不确定这是否是个骗局。我遇到了这个

我的情况正好相反。我将从C#转到VB.Net。更准确地说,我将从C#3.0迁移到VB10.0(.NET3.5到.NET4.0)。我最初计划使用C#到VB的转换器来处理语法


如有其他建议,我们将不胜感激

我并不反对VB.Net(我经常在它里面工作),但这听起来像是一个严重限制职业发展的举动。我猜你觉得C#太难了,只是个初学者。我给你的建议是坚持下去,这样会容易些。与VB.NET作业相比,还有更多的C#.NET作业


也就是说,找出等价语法(可能是最便宜的)最简单的方法是用C#编写东西,然后在Reflector中加载编译后的程序集,并将该语言导入VB.NET。它并不总是一个完美的模拟,但它会给你足够的提示开始

编辑:我从未推断或声明vb.net是次等的;在某些方面,它是优越的(xml文本等)

编辑:这个答案似乎不相关,因为海报上的这个开关是强制的。我认为这是一种选择

-Oisin有一本非常古老的(大约2002年)的书,介绍了两种语言之间的差异,并着眼于它们之间的转换——去年我用它从C#(3.5)切换到VB9(某些方面和维护旧项目需要它),这是一个很好的起点,所以它仍然非常相关

根据微软的说法(我是从VB.NET的微软项目经理那里听说的),C#和VB.NET的程序员数量大致相同。所以,如果你相信他的话,这并不是一个限制职业发展的举动

C#和VB.Net正在进入一个共同发展的循环。两者之间的主要区别将主要是语言语法,而不是它们的功能。总会有一些小的区别,比如我看不到VB.NET强制使用分号,我看不到C#有自动语句终止符。在C中几乎可以做任何事情,现在在VB.NET中也可以做


我的建议是坐下来试着学习语法。这不像从C#切换到F#,在这两种方法上有根本的区别。如果你发现自己在想,“老兄,我可以用C做这件事,”很可能,用.NET4.0,你可以用vb.Net做这件事……现在,如果你只知道一个qa编程板,你可以通过给出一个C示例来询问如何在vb.Net中做某事……)

我不明白为什么会有关于VB.Net和C#的争论。是的,C#确实需要更少的按键。但它编译成完全相同的字节码

我通常用VB.Net编程,因为我从事的大多数项目都是用VB.Net编程的。但我在读或写C#方面没有大问题。很明显,这两者之间有一些细微的语法差别(我很快就适应了),但我不明白为什么开发人员不能同时精通这两个方面

我认为C#更为流行,因为老派的“正统”程序员对C风格的语法更为熟悉,而那些起步较晚、可能有VBA背景的人更喜欢VB。我认为整个问题都有一定程度的势利感

我个人更喜欢用End If和End While和Next标识循环,而不是}和}和}。但我也喜欢C#的简洁

总而言之,它们实际上是一样的。至于C#更难,我真的不明白。这纯粹是一个语法问题

更新(5年后)

我现在几乎把所有的时间都花在写C#和JavaScript(以及其他C-ish语法语言)上,我必须说我并不特别喜欢回到VB


我认为你的习惯与你的偏好有很大关系——你会调整你的理由以符合你当前的偏好。:)

学习一门新语言的最好方法是让自己沉浸在其中,尽量不要将它与你已经知道的任何其他语言进行比较。在我看来,如果你在语法上迷路了,你最好拿一些VB代码的好例子,试着去理解它们,用一个转换工具来转换成C。尝试用C#编写代码并将其转换为VB将始终产生不符合标准的代码,并将减慢您学习新语言的进度

语言只是我们用来完成工作的工具,有些语言比其他语言更容易理解,有些语言生成更优雅的代码,有些语言比其他语言具有更高的感知地位。如今,框架比所用语言的语法更重要。如果你在编程中停留足够长的时间,你的工具集就会改变,你要么不得不改变它,要么日复一日地做同样的事情


语言传道者并不像语言中立的人那么聪明,不管工具集现在有多流行,你都不知道将来会流行什么,所以如果你想在编程方面获得一份职业,学习新工具的能力是非常重要的。

这不是完美的,但是这个代码转换器可能会在初始转换中帮助您。如果你完全不知道如何写东西,用C#写下来,然后把它放在这里。这东西救了我好几次


学习如何触摸输入…因为VB.NET要详细得多,需要多次按键才能完成任务:-P@Charles-我以前做过。更好的工作,更高的薪水…当谈到语言时,就要接受它。@Justin-更好的工作,更高的薪水?哇,我不知道你住在哪里。“我在任何地方看到的东西,C#开发人员的报酬都要高得多,而且C#开发人员的高级职位比VB开发人员多得多。”查尔斯,贾斯汀代表我回答。我正在换工作,新的组织正在运作