《C# vs.VB.NET:Choosing Your .NET Tool》观感

前几天在网上看到一篇文章,
《C# vs.VB.NET:Choosing Your .NET Tool》
觉得还是对刚接触Visual.Net的人蛮有意义的,其中它的大概内容可以归纳为:
1.作者首先认为凭开发者在接触.net前对哪种语言的熟练程度来选择使用C#还是VB.Net的看法是不正确的
2.程序员开发应用分两类,一种是快速开发(RAD),偏重与应用程序的开发,另一种是系统或企业级程序开发,而VB.Net和C#则是分别适用与各自的开发目的的。这主要是因为它们各自的语言特点决定的:
    a)VB.Net的特点是语法检查并不严格,(你在IDE里面随便大小写也没关系,它自动会修正你的大小写)
    b)同时VB.Net在事件处理(Event)和函数(Function)上的语法都远远灵活与C#,譬如你维护一个按钮的Click事件就要比C#的机制容易许多,
    c)并且Vb.Net它还允许非结构化的错误处理机制,尤其是它的On Error Resume机制,是开发很多应用程序都会应用到的(至少在C#里面的try catch可没这功能).

   但是C#也有其VB.Net所不能够及的优势,例如:
   a)C#有自动回收机制,在对资源、内存的释放上的能力要远远胜过VB.Net,所以特别适合开发系统和企业级程序
   b)在线程处理上,C#具备锁定对象,保护其被其它线程修改的能力
   c)在开发文档方面,C#可以自动生成开发文档,(类似与Java中的javadoc功能),这对于大型应用的集体开发很有意义

   上面的特点在该文章中都提到,我自己做了一些补充,总的来说,作者建议
   如果开发RAD应用的话,开发者不用拘泥于自己以前熟悉VC、mfc就一定要用C#来做开发,而是可以考虑Vb.Net
   如果是开发系统或企业级应用的话,则尽量适用C#

时间: 2024-11-01 00:05:43

《C# vs.VB.NET:Choosing Your .NET Tool》观感的相关文章

Is your .NET Code safe?

Is Your Code Safe? VS.NET's use of Microsoft Intermediate Language creates big advantages, but exposes VB.NET on the desktop. by Dan FergusURL: http://www.vbpj.com/upload/free/features/vbpj/2001/05may01/df0501/df0501-1.asp In the Visual Studio.NET (V

介绍VB.NET的线程(英文)

One of the most notable new features in VB.NET is the ability to create threads in your application. Visual C++ developers have been able to write multithreaded code for years, but achieving the same effect in VB6 was fraught with difficulty. Althoug

关于“经典VB”的一些想法

最近,这个主题已经出现在了"新闻组"里(呃,至少已经出现在了很多blog里),我一直在考虑如何回复大家--但事实上,我根本没有回复的必要,因为Dave Totzke已经替我这么做了.他在文中提到了一点:我们应该让C++继续存在下去,是因为Office是用C++写成的--关于这点我不太敢恭维,因为这理由实际上应当是--这个被托管的世界无法取代我们为底层的硬件和操作系统编写本地代码的需要.我们至少需要一种方案,使图形软件.设备驱动器.网络信息过滤器等等都能高效地运作--因此,我们还是需要非

VB.NET基础语法

很久以来,VB因为缺乏完善的面向对象支持.缺乏高效的错误处理机制和性能表现不佳,因而一直受到某些人的嘲笑.VB.NET将彻底改变这种情况.然而,VB.NET在这些方面的改进也要付出代价,许多旧的代码需要手工进行转换才能在VB.NET下运行. 下面几个表格总结了VB.NET语言在语法上的改动之处.注意这些表格并没有完全列出所有改动之处,但列出了最重要的一些改动. 表A对比了VB6中一些熟悉的语法形式及其在VB.NET中类似功能最接近的语法形式. 表A:语法对比旧语法 新语法 说明窗体装载事件,类初

VB.NET中有用的通用对象列表

要使用List(of T),我们需要了解如何部署.NET框架所提供的多种方法.这也将是本文要介绍的内容.我已经编写好了三个示例--使用ForEach, FindAll,和Sort--来阐述同样列表类的工作原理. 第一步是要创建一个同用列表.你可以从多种途径获取数据,但是最简单的方法是添加.文本中,我们会编写代码以便为举例中的集来分类.因此,下面我们就来讲讲创建集的代码. 首先,我需要一个能代表集中的Bottle的对象.为此而编写的代码是完全符合标准的,而且事实上,VB.NET 2008 Expr

VB.NET多线程应用

开发者一直要求微软为VB加入更多的多线程功能,对于VB.NET也是这样.VB6已经支持建立多线程的EXE.DLL和OCX.不过使用多线程这个词语,可能也不太确切.因此VB6仅支持运行多个单线程的单元.一个单元实际上是代码执行的空间,而单元的边界限制了代码访问任何单元以外的事物. VB.NET就不同了,它支持建立自由线程(free-threaded)的应用.这意味着多个线程可以访问同样一套的共享数据.本文的以下部分将讨论一下多线程的一些基本点. 问题 虽然VB6支持多个单线程的单元,不过它并不支持

VB.NET局部静态变量介绍

经过长时间学习VB.NET局部静态变量,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西.VB.NET能够实现很多C#不能做到的功能,如When语句.Optional参数.局部Static变量.对象实例访问静态方法.Handles绑定事件.On Error处理异常.Object直接后期绑定等等.VB和C#同属.NET的语言,编译出来的是同样的CIL,但为什么VB支持很多有趣的特性呢.我们一起来探究一下VB.NET局部静态变量. VB.NET局部静态变量 VB支持用Stati

使用VB.NET加密文件

加密 本文介绍使用XOR加密算法对数据进行加密, 这是一种很简单的算法,使用了尽量简单的VB编程方法,通俗易懂.我们可以采用更安全的算法如DES算法,IDEA算法等.各位如有任何见解,请不吝赐教. 在窗体中添加一RichTextBox,设置其Name属性为SourceFile,Multiline属性为True,ScrollBars属性为3-both.添加一MainMenu,设置一菜单项"文件",其下有"打开","保存","加密"

编程-VB 引用同一根目录下的文件夹的Excel

问题描述 VB 引用同一根目录下的文件夹的Excel exe文件跟文件夹的根目录一样,要引用文件夹下面的Excel部分单元格的数据各位高手帮我解答下,新人的第一条提问 解决方案 '工程-引用-将Microsoft Excel 12.0 Object Library选中,'工程-部件-将Microsoft Common Dialog Control 6.0选中,'在窗体上添加一个按钮Command1对象,一个CommonDialog1通用对话框对象Private Sub Command1_Clic