当前位置:编程学习 > C#/ASP.NET >>

VB PK C# 到底谁更强(续)

--------------------编程问答-------------------- 作为一个新手,我觉得C#的可读性更强,VB.Net形式上太散了,结构性不强,C#的结构非常明朗,尤其是在循环语句中。 --------------------编程问答-------------------- 个人更喜欢C#,C#的语法完胜VB跟Java --------------------编程问答-------------------- 既然C#那么好。
为什么还没有取代掉VB。
那么VB一定有一些东西胜过C#。


还是说C#一定会取代掉VB。
只是时间问题?

表示,VB新手飘过 --------------------编程问答-------------------- 你要拿出理由啊……
C#3.0的新特性有多少是VB.NET不支持的? --------------------编程问答-------------------- 萝卜青菜的。英语的确比中文的应用范围更广泛,没见中文没人用啊。vb.net有其独特的用户群,从vb6到.net的平滑过渡,是很不错的。 --------------------编程问答-------------------- 打击我学习VB.NET的热情 --------------------编程问答-------------------- 最近没事就在琢磨VB想多学点东西,但是诸多的不便让我 . . .无语

==========
到底什么不便也不说? --------------------编程问答-------------------- 在于谁用哪种语言更强而已 --------------------编程问答--------------------
引用楼主 honeylihan 的回复:
刚无意中看到一个帖,作为一个C#er觉得太不平了,原帖在 :http://topic.csdn.net/t/20060416/23/4691088.html ,最近没事就在琢磨VB想多学点东西,但是诸多的不便让我 . . .无语
我没有贬谁扬谁,只是站在一个公正的角度,觉得C#确实要比VB好多了,尤其像C#3.0的新特性,那更是增加了我对C#的热情.
我不多说,大家看看大势所趋吧(下面一个链接……

諸多不便,是因為你不熟。
我認同逍遙的說法,每種語言都有他特定的用戶。
比如,香港、臺灣、日本人都喜歡VB
--------------------编程问答-------------------- 不好比较。 --------------------编程问答-------------------- 大家穿过衣服。
总裁一般喜欢名牌,很贵的名牌

老板一般喜欢富贵,越贵越买。

群众一般喜欢性价比且价底的

农民一般喜欢朴实价低。

由此可以看出,不同的衣服价名针对不同的人群。

正如各种语言一样,

VB追求的是入门简单,快速出成果,简化相关描述。如果你不是专业编程人员,只求更快出成果,
VB就是你的追求。

而C/C++是专业人员的事

Csharp则是上面两者之间。

因此没有谁更好,谁更差。(有人还用VB编过杀毒软件,汗,厉害)

只能说,如果你熟悉4种编程语言后,你也许“看山不是山,看山还是山”

以上为一家之言。

工作中解决一些问题,我更喜VB,不为啥,因为我熟悉它,而且出成果快,解决问题迅速。
勿需更高深的编程思想 --------------------编程问答-------------------- 不了解C#。看了一些C#代码,个人感觉C#像C++与VB.NET的私生子。不过C#、VB都是微软出的,有差距也不会太大吧!由于习惯了VB,我还是支持VB的,因为即使VB有些功能不能直接写出来,我还可以靠C++来写个dll供其调用。希望不是靠编程为生的人多多支持VB、编程为生的人多多支持VB、C#. --------------------编程问答-------------------- 倾向于VB.NET --------------------编程问答-------------------- 各有各的长处,没有必要一较高下。就算是PK下来C#或者VB更强,也是萝卜白菜,各有所爱,不同人有不同的选择。 --------------------编程问答-------------------- 做了VB.NET五年~没见得C#在实际解决客户应用的过程中,比VB.NET有什么优势~~
有些C#的东西,VB.NET也可以用,也没觉得不方便~~
两个本来就是微软都支持的东西,某些方面上,各自有各自的优势~~
而且很多代码都是可以互相转化的~

--------------------编程问答-------------------- C#似乎好一些,用它的场合越来越多 --------------------编程问答-------------------- c# 用着舒服。只是可以被反。烦 --------------------编程问答-------------------- 现在的VB和C#本质上没有区别,在IL层面更是没有任何不同...都不过是.NET CLR的一种开发工具而已...

如果你觉得VB的某些臃肿的封装库更方便大可以直接在C#项目中引用...如果你觉得C#的某些特性更好用大可以直接在VB项目中引用C#类库...有什么区别?

世间本无事,庸人自扰之... --------------------编程问答-------------------- 这个讨论没有任何意义啊,要知道盖茨就是靠VB发家的。
不存在最强的语言,只有最强的程序员 --------------------编程问答-------------------- 语言的实用性考虑使用场合。
单纯考虑语言美观和语法功能上,就萝卜青菜各有所爱了。
有人说C#太花哨(特别是java众),有人说花括号和分号太碍眼(python等爱好者)......

我个人觉得,从语言进化的角度看,C#是非常先进的语言,美观、清晰、简洁,VB有些烦冗拖沓,代码堆叠多了看着眼花,这两门语言上,我更喜欢C#。 --------------------编程问答--------------------
引用 18 楼 vrhero 的回复:
现在的VB和C#本质上没有区别,在IL层面更是没有任何不同...都不过是.NET CLR的一种开发工具而已...

如果你觉得VB的某些臃肿的封装库更方便大可以直接在C#项目中引用...如果你觉得C#的某些特性更好用大可以直接在VB项目中引用C#类库...有什么区别?

世间本无事,庸人自扰之...


其实IL上是有区别的,整体上C#的优化比VB好,应该是编译器的问题,微软是不是在C#上放了更多的功夫呢。
如果你手头两种语言的项目都有,你可以看看他们的IL,VB在许多场合会绕很多弯子,尤其是字符串处理。 --------------------编程问答-------------------- 月经帖 --------------------编程问答-------------------- 这里大多数人同时考虑的开发平台的问题,虽然语言是开发平台的一部分,
但我想楼主可能问的问题更偏向于语言而不是平台,我想大多数情况是:
你用的最习惯的语言就是你用的最舒服的语言。 --------------------编程问答-------------------- 其他不评价,就比较语言这一做法,我觉得楼主做了一件你开发生涯中最没有意义的事情。语言没有谁强谁弱,只在于选择什么语言,面向哪类项目,及如何使用。有能力的用汇编也能写出一套系统,没能力的茫茫终日沉浸在学哪门语言的抉择上……
不扯太远,就以VB.NET和C#,都是基于FrameWork,处于一个平衡的语言层次,而且都是一个公司的产品,毫无孰强孰弱可言。C#能调用的功能VB.NET同样可以调用,VB.NET所能调用的系统函数C#同样可以;C#能实现的结构、类等等数据定义,VB.NET都一一能做到……差异只在于书写的不同。
楼主看不惯VB.net的代码,只是因为楼主看惯了C#的代码。而且很奇怪的是VB.net和c#是两个平衡层次的语言,为何楼主有空还要研究VB.net?有时间不如去学C++或java。说到java,楼主似乎对java也颇有意见,不过楼主是否知道java到底是面向哪个方面的应用吗?它的基础是什么?它有什么好处?你是否已经理解了?
至于c#3.0的新特征,你不妨列举一下c#3.0的哪些新特征是vb.net所没有的,然后再进行讨论。不过千万不要拿出framework3.5的特征当成c#3.0的特征了。
对于其他一些比较哪个语言强的言论,还是忽略吧,那是误己又误人的帖子。
最后说说我自己,我既用vb.net,又用c#。在开发公共类库的时候我用VB.net编写,原因是习惯了,而且类库也有一定规模;在进行应用开发的时候用c#,因为团队大多数成员使用,与国际接轨。因此整个解决项目中往往vb.net和c#同时存在。 --------------------编程问答--------------------  月经贴... --------------------编程问答-------------------- 月经贴。除了XNA开发只能用C#,还没见过什么C#能做而VB.NET不能做的,其实也就习惯而已。我实际应用中有不少都是用VBA编写个宏就可以解决的Excel问题。 --------------------编程问答-------------------- 但是别忘了,那是讨论vb.net的当时的版本。vb.net那一年相比于c#3.0的主要新特性而言,曾经显得很落后。 --------------------编程问答-------------------- --------------------编程问答-------------------- 这个各有所长吧,自家东西,没必要PK --------------------编程问答-------------------- 语言还是有强弱的,但这是指在不同项目需求中,要求高效底层操作时,C#或VB肯定比不了C,要求快速开发周期时则必然相反,事实上如果学不会因地制宜而只会坚守一门语言的“纯正”,恐怕在这个行业根本混不好。

但是比较C#和VB的强弱就有些可笑了,可以这么说,如果你真是一个.Net高手,那么至少在.Net框架范围内,任何一种C#能完成的操作,用VB也必定能完成,反之亦然,而且开发周期和运行效率应该相差无几,否则就只能说明你是在半瓶水晃荡,那还是把时间用在随便选一种语言好好学学,而不是浪费在做这种无聊的比较上吧 --------------------编程问答-------------------- 又长知识了
其实每种语言都有其优点和缺点
不过个人觉得VB的变化挺大的,至于C#,我没接触过。

98年出的VB6吧?之后好像出了VB2003、VB2005、VB2008、VB2010。
这更新速度实在太快。

--------------------编程问答-------------------- VB语音和C#语句是相同的,函数名都一样,只是语法不同而已,并且可以相互调用。
但实践证明,同样在vs2008或2010下,VB开发环境比C#开发环境的智能性强许多,C#的开发环境bug太多,经常出现莫名其妙的错误,且不提示在哪里。
总之,你要根据你的习惯选语言,但vb是最经典的。 --------------------编程问答-------------------- vb是编译型语言。肯定要比c#强。在做软件方面。
如果是和vb.net比两者差不多。
vb.net刚出来的时候。微软曾说过为vb.net做了特别的优化。

其实用vb的人是最多的。不是搞开发的。用的语言基本上都是vb。
全世界有多少白领都是用vb,vba。这个数量估计大过所有搞开发的开发人员。 --------------------编程问答-------------------- vb也有与c#一样的智能感知。不过要装个插件。
以上是个人意见。自己现在开发也主要是vb.
--------------------编程问答-------------------- 唯一让我耿耿于怀的就是VB.net做图像不能想C#那样直接用unsafe 指针操作。 --------------------编程问答-------------------- 我用了10年的vb和vba了,期间拜电子工业出版社《java宝典》所赐,放弃java。
目前由于项目需要,将vba和vb代码转换到vb.net,发现智能化程度很高。虽然.net后,vb的核心思路变了,但是从软件开发的层次上来说,应该还是最方便的。web开发我不熟,只做过没几个项目不太好说。 --------------------编程问答-------------------- 萝卜青菜各有所爱 --------------------编程问答-------------------- 等你们用过VS2008 或vs2010开发系统时,你们到评价两者优缺点。我一直用VS2008开发系统。现在偿试vs2010.感觉。一样。
--------------------编程问答-------------------- VB也可以用XNA了 有图有真相
只要把VS2010打上SP1就可以了

[img=http://hi.baidu.com/jimmyfluore/album/item/0350ae382c0ddb9fd462255d.html#][/img] --------------------编程问答--------------------

抱歉。 --------------------编程问答-------------------- 学来自己写点小东西,还是VB好学啊. --------------------编程问答-------------------- 外国人英语厉害,所以都用VB,看代码如看小说
中国人英语不济,看{ 看起来爽点 --------------------编程问答-------------------- vb感覺比較好學點!
--------------------编程问答-------------------- 个人口味不同,用得顺手就好。 --------------------编程问答-------------------- 萝卜青菜,各有所爱 --------------------编程问答--------------------
引用 12 楼 zenggang999 的回复:
不了解C#。看了一些C#代码,个人感觉C#像C++与VB.NET的私生子。不过C#、VB都是微软出的,有差距也不会太大吧!由于习惯了VB,我还是支持VB的,因为即使VB有些功能不能直接写出来,我还可以靠C++来写个dll供其调用。希望不是靠编程为生的人多多支持VB、编程为生的人多多支持VB、C#.


哈哈,深有同感!!!!!! --------------------编程问答-------------------- 语言上的差异肯定是存在的,个人习惯最重要,没觉得哪个更好
说VB.NET不好的说明他不会用VB.NET,或者说他不习惯用 --------------------编程问答--------------------
引用 21 楼 cosmo_sei 的回复:
引用 18 楼 vrhero 的回复:
现在的VB和C#本质上没有区别,在IL层面更是没有任何不同...都不过是.NET CLR的一种开发工具而已...

如果你觉得VB的某些臃肿的封装库更方便大可以直接在C#项目中引用...如果你觉得C#的某些特性更好用大可以直接在VB项目中引用C#类库...有什么区别?

世间本无事,庸人自扰之...


其实IL上是有区别的,整体上C#的优化……


那建议看看C++/CLI的编译后IL代码 --------------------编程问答-------------------- 支持VB、vb.net!  --------------------编程问答-------------------- 吵来吵去真有意思,我VB入门,学了C++,后来又研究了.NET
个人总结来说:个人习惯和爱好而已。
同一层次上,没有谁强谁弱之分,也没有谁能实现谁不能实现的差别,表达方式问题。
为什么一定要说谁比谁强?弱了怎么样,强了又怎么样?
你能用你所喜欢的语言完成你想要的功能,这不就是最好的吗?
送你一句话:存在即合理。 --------------------编程问答-------------------- 咱只是个VB爱好者。
用VB是因为逻辑简单。

用久了就发现VB对硬件方面确实不行......
微软的MSDN对VB的硬件控制函数又少得可怜.....

那么多人不用VB而是用C++,VC等,估计是因为他们的MSDN提供的资料丰富吧。
那些类、那些头文件、那些函数库就足以让VB汗颜了....
不过,起码VB提供了最简单的界面控件,不用浪费时间考虑N多的界面操作事件函数.....
VB功能不咋的,但VB可以快速入门,可以快速弄个小小的自己用的软件出来,这就够了吧?
难道会有人考虑用VB编写操作系统么? --------------------编程问答--------------------
引用 51 楼 zaxife 的回复:
咱只是个VB爱好者。
用VB是因为逻辑简单。

用久了就发现VB对硬件方面确实不行......
微软的MSDN对VB的硬件控制函数又少得可怜.....

那么多人不用VB而是用C++,VC等,估计是因为他们的MSDN提供的资料丰富吧。
那些类、那些头文件、那些函数库就足以让VB汗颜了....
不过,起码VB提供了最简单的界面控件,不用浪费时间考虑N多的界面操作事件函数.....
……

倒  5月底的帖子怎么又起来了#24

个人比较赞成存在即合理的观点(PS:50楼有点不厚道,引用别人黑格尔的话至少注明一下……)
任何事物都有两面性,没有哪种语言会是一无是处的。

另外给楼上的一点说明,C/C++、VC对硬件控制能力强并非缘于资料丰富(其实51楼的理解正好反了,Basic的出现早于C语言,如果论资料的话应该是Basic更多才对)。

C/C++有一点和其它语言不同的地方。相对于其它的高级语言,C/C++经常被归类为“中级语言”。因为其特性介于高级语言与汇编语言之前,既像高级语言一般容易理解,又可以像汇编语言一样支持直接对地址的操作(这一功能由于比较危险而在后来的VB和Java中没有加入,C#中虽然保留了C/C++的指针,但对其功能进行了大幅度限制)。C/C++对硬件控制能力强其实是这一原因。 --------------------编程问答-------------------- 每月比来的贴。 --------------------编程问答--------------------
引用 53 楼 linjimu 的回复:
每月比来的贴。


叫做月经贴。 --------------------编程问答-------------------- 每一种语言都有他自己的特点,不能一概而论 --------------------编程问答-------------------- 貌似有天你习惯了就会像我一样,这个页面用C# 那个页面用VB.NET 。。。。。。 --------------------编程问答-------------------- 各有所长.有些地方vb提供的代码方式更方便。 --------------------编程问答-------------------- 共用同一套类库,有什么谁比谁更强之说 --------------------编程问答-------------------- vb语法过度sb --------------------编程问答-------------------- 支持VB,VB --------------------编程问答-------------------- 掌握那个那个妞 --------------------编程问答-------------------- 学习52楼。个人感觉语言强弱跟语法没关系,只是开发平台能提供的功能强弱,或者是编译器的强弱。 --------------------编程问答-------------------- 两个语言都要学,够呛不??????? --------------------编程问答-------------------- 两个都强,看程序员熟悉哪个咯 --------------------编程问答-------------------- 存在既有道理。
以前一直在做C#项目,最近应公司要求用VB.NET开发了一个小系统。
个人看来,.NET之所以称为.NET平台,就是在于它这种“通用性”。因为你会发现,
在VB.NET控件的使用方法,属性跟ASP.NET是完全一样的,唯一不同的就是语法而已。
验证那个啥。。。语言只是工具。

Public string getYourName(string name)
(
   return "your name";
)


Public Function getYourName(ByVal name as String) as String
   return "your name"
End Function
--------------------编程问答-------------------- 路过,随便看看 --------------------编程问答--------------------
没什么意思,努力掌握好这2门就可以了

好好工作,赚钱才是王道 --------------------编程问答-------------------- C#在书写代码时,的确不如VB.NET方便.VB.NET的IDE比C#更智能化人性化.
如果说运行速度,两者是一样的.
不过,C#有一个优势,它的语法强者构与JAVA相同. --------------------编程问答-------------------- VB.NET提供很多方便的类.如反射调用.在C#要自己写.在VB.NET里,一个 CALLBYNAME 搞定一切. --------------------编程问答-------------------- vb.net c# 各有所长,比如vb.net全局变量比较方便,语法简单,容易上手。c#有丰富的资源。 --------------------编程问答-------------------- 各有所长吧。 --------------------编程问答-------------------- C#能实现的功能VB都能实现,差别的是语法和编程习惯的问题,可能说C#好的人没用过VB,智能感知和即时编译不如VB,这是先天语法问题 --------------------编程问答-------------------- 在.net时代,VB和C#站在同一平台上,大家层次一样。用不着相互不服气。
我倒觉得,将来Vb.net似乎前景更好些。

国人向来有攀比跟风的心理,学习计算机语言也不例外。

计算机语言是用来开发软件的,每种软件都有其存在的价值。企业级应用,那一定是java,次一级的桌面应用那是C#,vb,c++的天下。汇编语言好像是主要用来开发CPU指令集。机器语言好像只是是CPU生产厂家用。
  CPU内部的晶体管好像是单晶硅厂生产的,单晶硅好像是从矿石中提炼出来的,矿石是采矿工人挖掘的,矿石是属于大自然的。
按照国人的理论,C++看不起java vb c#, c看不起C++,汇编看不起C,cpu看不起汇编,单晶硅看不起cpu,采矿者看不起单晶硅,对大自然看不起矿工。我看大家为了向高级进化,干脆都去采矿得了。 --------------------编程问答-------------------- 由于有各种互相转换的软件,VB.NET 和C#  ,我们在使用时看多了,转换的多了,都自然会了,差不多的
只是写的语法有点差别而已,经常转换下,对着看嘛。 --------------------编程问答--------------------
引用 73 楼 zhangcw1990 的回复:
在.net时代,VB和C#站在同一平台上,大家层次一样。用不着相互不服气。
我倒觉得,将来Vb.net似乎前景更好些。

国人向来有攀比跟风的心理,学习计算机语言也不例外。

计算机语言是用来开发软件的,每种软件都有其存在的价值。企业级应用,那一定是java,次一级的桌面应用那是C#,vb,c++的天下。汇编语言好像是主要用来开发CPU指令集。机器语言好像只是是CPU生产厂家用。
 ……


确实,国人只知道跟风、攀比,一点不务实。
你做项目最重要的是什么?是速度快!按期完成任务,而且现在的商务项目还有几个需要直接控制硬件的?净扯淡。 --------------------编程问答-------------------- 现在学习C#的人比VB.NET人多所以都认为C#好,各有千秋而已看客户的要求啦。
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,