我们有一个很大的ASP经典代码库,但我希望在ASP.NET中进行未来的开发(并且可能在我们拥有的未来端口中).语言的自然选择似乎是VB(现有代码是VBScript),但我是否太仓促?从长远来看,语言的选择是否会产生影响?
它正在学习.Net(框架),花时间.
具体的语言并不重要,更多的是品味.我通常建议尝试两种语言的游戏项目(以及任何其他可能会让你喜欢的游戏项目),然后决定哪一种你更熟悉(或者更成功!)
首先,不要为了它而移植东西.如果它工作正常并且移植它几乎无法获得,请不要管它,并继续在VBScript中进行错误修正和小改进.如果有足够的理由将事情移动,那么就这样做,但是你最好先熟悉.Net版本的Web应用程序,而不是在事先做端口的情况下尝试即时学习.在"干净"的环境中学习PostBack和ViewState等新概念要容易得多.
当你移植东西时,也没有什么可以突破你过去的思维方式(只是让它工作在任何旧的方式而不是在需要的地方重新设计).
从长远来看,最终没有太大的区别,主要是感性和个人品味,但我建议先学习C#,因为缺乏熟悉会强调你正在学习新东西的事实.希望这将帮助您学习以自然的.Net方式而不是基于程序的VB(脚本)方式.你想要忘却和学习.熟悉某些关键字会对您不利.
在一些帖子中回应其他好处,并添加一些我自己的:
未来的潜在收益:由于感知差异,C#开发人员通常比VB.Net开发人员更有价值.
大多数开源.Net代码都是C#,它的质量一般(尽管不总是)往往更高.
在C#上有比CSS.Net更多的问答和例子.当我发布这个帖子时,有1572个帖子用C#标记,只有185个用VB.Net就在Stack OverFlow上.
C#OO关键字是相当标准的,它使得更容易阅读其他OO语言代码.VB.Net没有任何理由重新命名,例如抽象(C#,C++,Java等等)与MustInherit(仅限VB.Net).
人们普遍认为,一旦熟悉两种语言,可视化解析C#代码比VB.Net代码容易得多
你不会被C#'ers'看到'并且可以帮助嘲笑VB.Net的人(如果你愿意的话 - 文化存在......)
一旦你最初在C#中学习它,它应该更容易滚动到VB.Net而不是相反.投资你自己的未来.
当我从ASP3迁移到ASP.NET时,我终于选择使用C#而不是VB.NET.
我写了Basics多年(MS-BAsic,GW-Basic,Quick-Basic,Visual Basic,VBScript)并且使用VB.NET非常困难,因为我总是尝试像以前一样编写VB6或VBScript.
所以C#对我来说是一个更好的选择:我没有因为习惯的重量而减速.
此外,C#是一种新语言(此时),而新的VB.NET关键字给了他一个Cobol气味:)