c和vb.net差别 vbnet vb区别( 二 )


学习上的难度
这部分不仅仅初学者需要考虑 , 那些从现有开发工具转移到.net的开发人员也需要考虑 。首先,VB和C#都是非常简单的,对于初学者来说,VB提供伸缩性更强的空间 , 因此比C#更加易于接受 。但这只是相对而言,C#对于初学者来说也不会有太多的困难 。
对于使用Visual Basic6或其他版本的程序员来说 。VB.net的语法显然要比C#更加接近VB6,网上流传的VB与VB.net差别被过分夸大 , 使部分程序员退缩 。其实VB.net增加的只是面向对象的思想,许多VB程序员不具备完善的面向对象编程开发经验,因此觉得VB.net难以接受 , 这是很容易克服的 。想想看 , 即使你要使用C#不也得学习面向对象吗?至于有C/C++/Java经验的人,C#是小菜一碟 。刚才说过C#和VB实际上都很简单,所以不见得VB程序员学习C#就要比C/C++程序员来的困难,反之亦然,有C/C++经验的人也可以果断的选择VB 。
移植现有代码
这一部分是程序员最头疼的部分 。但对语言选择有决定性的意义 。
从VB6移植代码的程序员,最佳选择就是VB.net,因为其他.net语言没有一种是与VB相似的 。而且即使VB6的工程移植到VB.net非常困难,也有一个移植向导可以帮助你完成大部分工作 。如果手工把他移植到C#,需要白白花费大量的时间 。而且刚开始使用C#的VB程序员通常都会为C#缺少他们熟悉的函数而头疼 。VB.net不会出现这种情况 。
从ASP移植到ASP.net,首选语言仍然是VB.net,因为多数程序员使用的ASP语言是VBScript,只有VB.net最大程度地接近这种语言 。
C#对于移植代码似乎没有作用,了解C#的人都明白,把现有C/C++代码放到C#中运行几乎是100%不能通过的 。所以 , 如果需要移植C/C++代码,最好使用Visual C++.net 。他做到了最好的新旧结合 。C#仅仅用于编写新的.net应用程序 。
如果需要从Java移植代码,C#可以选择 。同时还有J#及其他一些MS提供的转换工具 。
文档和资源方面的考虑
在MSDN文档中 , C#和VB是同等看待的 。所有文档和例子都是有VB和C#两份的 。因此 , 在寻求资源方面都不用担心 。互联网上的资源,C#要多于VB , 特别是国内,有倾向于C#的潮流 。但是ASP.net的资源VB较多 。国内缺乏VB.net资源是影响VB.net推广的重要原因 。但是在国外有很多非常成熟的VB技术,如掌上设备的开发技术 。
代码风格和杂项问题
C#书写的代码比VB平均短小20%,许多人不喜欢VB中过长的关键字 。当然他们可以选择C# 。但在开发环境中,VB的自动完成功能比C#更完善,其实30%的代码都是自动补充的 。因此,实际上VB程序员不会比C#多打多少字 。但VB语言换行比C#麻烦,如果需要书写大量繁杂而长的代码,最好选择C# 。VB的代码接近完整的英语 , 比C#更加易读 。如果是初学者不妨选择VB 。
C#与VB.net有什么不同呀?都说在.NET里c和vb.net差别,.NET framework和CLR是应用运行的基础 。那么VB.NET和C#是不是就完全一样c和vb.net差别,只是语法不同吗c和vb.net差别?
一、C#
--- 像VB一样简单,像C++一样强大的新语
C#是第一流的面向组件的语言
由 Turbo Pascal, Delphi, and Visual J++的首席设计师Anders Hejlsberg 倾心3年设计
所有的语言元素都是真正的对象
开发强壮和可重用的软件
所有的.NET Framework中的基类库(Base Class Library)都由C# 编写
二、VB.NET
--- 完全面向对象的BASIC语言
1.新语言特性
完全面向对象– 继承(Inheritance), 重载(overloading), 共享的成员, 结构化异常处理
强壮的语言 – 严格的类型检查, 变量声明时初始化,支持垃圾收集(Garbage collection)

推荐阅读