vb.net和C#开发环境和开发效率的比较
也许有人看见这个标题会说:没什么好比较的,都一样。是的,按照.net宣称的,也应该是一样的。但这两个语言和其开发环境,却还是虽大同也有小异的。当初我初学.net时也是以为没区别,仔细想了一下,害怕C#混淆我的c++和java,就选用了vb.net。现在主要使用vb.net,也少量使用了C#,就我的理解,给他们在使用上作些比较。
书写速度上的比较:C#是类C的,代码较少,多用符号;vb.net是类basic的,用字符描述结构。初看来C#的录入速度应该更快,因为字符量较少;而我认为,vb.net的书写速度应该更快。对于初学者来说,或者键盘录入速度不快的人(有很多编程经验也很丰富的),或者是键盘不顺手的,敲符号很麻烦,经常都要看键盘,这样速度比较低。对于书写速度较快的,我感觉vb.net书写上也不会差,因为很多代码都不用手敲,一回车就能出来。再加上不区分大小写,只要声明的时候大小写符合规范,后面还能自动纠正大小写,不用总去按shift,也是一个很好的优点。而且感觉vb.net的自动完成比c#要好一些。所以我觉得从这一点上来说,vb.net占很大的优势,除非是c高手(还要是打字高手),c#书写起来才会很快。
IDE上的区别:
1. 我感觉到的vb.net唯一的优点,就是即时后台编译,写错一点东西,一换行就能出来,而c#不能保证所有错误都能在换行后指出。
2. C#的优势在于能够生成doc,而vb.net却不能(哪位朋友知道其它工具的,也请告诉一声)。
3. C#的类视图和vc的一样,能够比较方便的添加函数等。vb.net把这个功能放到了编辑器上面的列表框里,虽然对于事件和重载比较方便,但新增自定义函数就没那么方便了,虽然C#类视图里的相应功能录入上并不见得快,但有个带界面的还是很舒服嘛。
缺陷:我感觉vb.net最大的缺陷,也是我最开始认识到vb.net的不足,就是在中文符号上的问题。vb.net将中文的()”‘都认为是半角符号了,可以自动转换。虽然可以通过ctrl+z取消自动转换,但实际上它仍然是作为半角符号使用的。比如:我想有一个含有全角引号的字符串:"“" ,这在c#里面是理所当然的,但vb.net会认为这是三个半角引号,编译错误。那这样呢:"““",嗯,不出错了,但实际上这个字符串却是:""""。也不是没有办法,可以这样:Chr(41392),或者:Chr(41393)。是不是很让人郁闷呢?不知道有没有其它解决方案。。。
感觉可能是C#开发组和vb.net开发组的沟通少了,要不就是故意的?
最终结论,应该算打个平手吧,都有不尽人意的地方,希望2005能有改善。
大家多多补充,看看还有什么不同的地方。
---------------------------
http://www.cnblogs.com/squirrel_sc
1. 如有引用,请包含本段文字及原始出处。以表示对作者的尊重,且能将有相似想法的人联系起来。
2. 如无特殊说明,本文的文字代表作者的观点和想法。由于人类的记忆和连通性的限制,可能会将别人的观点和想法当成自己的(会尽量避免,但我读书少,别蒙我:D);或有人会有同样的想法(那就太好了)。若有此类情况,请联系我。我会很高兴更新内容。
3. 每篇文章会根据反馈或新的想法,随时更新。我会尽量记得更新版本号。