来csdn已经5年多了。VB版终于升星了,这是我第一个升星的版。谢谢大家的支持哦,所以请大家踊跃接分!下面谈谈VB6的前途。虽然用VB很多年,但是在前辈面前仍然是菜鸟一只,我大胆说两句,说得不好还请指教。自从2000年微软推出.NET计划以后,VB产品线就彻底停掉了。我说的VB,指的是VB6,不是后面的VB.NET。
VB面临好多方面的挑战,最大的是软件从C/S向B/S的转型。而在WinForm下,由于微软的放弃,VB也越来越过时了:(1)VB本身过于简单——因此它支持的东西实现起来超乎想象的简单,他不支持的东西,超乎想象的复杂,他的扩充性不好,因此微软为VB设定了一些常规开发的任务集就决定了VB能做什么。
VB5的时候,COM/DCOM大行其道,VB立马跟进,一下子VB开发COM的效率就立刻超过了所有语言。VB6的时候,ADO数据访问、Office 插件大热,马上VB又增加了这些功能坦率地说,IIS应用程序,ActiveX文档和DHTML在当时有些超前了,后来看看还是很不成熟。总之微软原生支持的功能,VB的实现都超级简单,简单地让别的开发工具的用户嫉妒。
但是之后缺乏微软的支持,让VB去操纵网络、存取XML、访问Web Service、编写多层应用……你会发现,VB比起Delphi、Java、C#,都没有任何优势,反而由于VB对多线程缺乏支持在网络开发方面步履维艰。
(2)随着面向对象和组件化开发的深入人心,初级开发者也意识到OO的重要,或者说面向对象不再是大项目才用到的高级技术,尤其是2003年以后,设计模式的火爆。然而VB却缺乏对面向对象最基本的支持。或者说为了模拟这些VB不具备的特性,用上OO反而得不偿失了。
(3)VB定位于原生Win32程序的开发却并不能支持Windows API的很多特性。比如VB需要声明API,缺乏API的文档,在语法上,不能支持SEH,遇到Callback函数,一旦出现错误,整个开发环境立刻崩溃。在原生Windows开发已经非常萎靡的情况下,VB又敌不过Delphi和VC的夹击。
(4)VB缺乏大厂商的支持,自从VB被微软放弃以后,大厂商对于VB的投入非常谨慎,面向VB的产品越来越有限。很多第三方厂商的SDK,提供VC的头和库,提供.NET的文档,偏偏抛弃了VB就算支持ActiveX接口勉强支持VB,但是明显转换到Delphi、C#平台是更稳妥的办法。
像报表、图表、用户界面等等组件,.NET下有很多选择,而且价格便宜,不少甚至开源,VB下的选择就很少了
VB本身在Vista、XP下的支持也不是很好,VB6自绘的控件和XP的主题格格不入,一些COM组件在Windows Vista下运行不了,WinHelp帮助主题更是被Vista抛弃。
(5)VB的程序缺乏效率,由于VB依赖于虚拟机环境,所以运行速度非常缓慢。编译器本身也不可能再去支持x64、多核心等等新特性。相反的是,原先被骂的Java和.NET由于不断支持新的技术,现在的性能提高很大。不信大家试下,把VB的程序在.NET重新编译下,就能快好多倍。
(6)VB的IDE已经很落后了,大家用用Eclipse和Visual Studio 2008/2010就会发现VB的IDE有多差劲。别的不说,VS2005支持智能感知,在一行开始的时候就有提示,而VB的智能感知就局限在自动完成成员,这一点就非常不方便。最近看到很多高级VB用户不断透支VB的功能,比如让VB支持内嵌汇编、支持Web Service、支持Aero界面、挖掘IE编程……但是都需要用到很多Hack方法。曾经有个ThunderVB计划,让VB支持编译标准dll,内嵌ASM/C++代码,可谓很牛,不过最后项目还是放弃了,我想最主要的原因是在VB技术落后、市场萎缩的的情况下,开发已经没有成本的优势了。技术到最后无论多牛都必须有市场有需求。VB的On Error GoTo这种异常处理机制大家去研究,可是这些在现代的语言里面早就被优雅的结构化异常处理取代。下一代的编程语言,比如Ruby、C# 4.0、Java 7、F#或者别的,又裹挟了更多新特性来袭,真的不知道VB还能挺住否。至于VB的另一个用途,就是成为二级考试的语言,和Turbo C、FoxPro那样但是这些初级开发者到了实际开发的时候还是放弃了VB,这些低水平的重复大量浪费了他们的时间精力和社会资源。我对VB前途非常不看好。胡乱说说,大家排砖。

解决方案 »

  1.   

    另外分享一套VB6的经典控件哦http://download.csdn.net/source/1601550
      

  2.   

    lz有点过于悲观了,其实我们最需要的是vb的语法,而非vb6的编译环境。可以说vb语法应该是世界上实际使用最多的语法,简单易懂上手快,我相信任何一个公司都不会放弃这个群体。而在新的.net环境中,其实这种vb语法还是大量存在的,甚至vb6程序直接转换到 .net平台也不会费事。为什么c#语法会火于vb语法,其实也很简单,就是微软为了把delphi程序员拉拢过来,实时也证明微软此举很成功。那么vb究竟会不会没落呢,我想根本不会,因为使用vb语法开发cs或单机程序的人还是更倾向于vb6的,多数的.net资源与vb6资源可以相通共享,因此升级vb.net也就是熟悉熟悉ide而已,至于vb6和。net之间存在的巨大差异那是微软设计人员需要考虑的,我想并不会影响我们的使用,我们最需要的就是把好用的程序给客户就行了。bs程序现在大行其道,原因可能就来自web2.0以及google的什么所谓的云计划。实时也的确如此,google对网络熟悉当然希望深度挖掘网络的作用,因此让人感到google的可怕,可实际看看,那种云计划,网络操作系统离我们还是有点远。虽然,通过浏览器完成一些以前cs系统的工作的确简单了很多但其附加作用还有更多功能也确实还不如cs系统。这个让我想起美国所谓的星球大战计划来了,可能就是google的烟雾弹,让微软感到压力而会更多进行一些无谓的投入和研发。想想我们究竟有多少工作是在bs网络软件下完成的呢?
    也许早晚有一天bs会一统天下,就像早晚会有星球大战一样,但那是google的一个梦吧,遥不可及的梦。
      

  3.   


    http://www.google.cn/search?client=aff-cs-maxthon&forid=1&ie=utf-8&oe=UTF-8&hl=zh-CN&q=%E4%BA%91%E8%AE%A1%E5%88%92
      

  4.   

    任何一个有志于长期编程或把编程看成一种生活乐趣的人,都不能死守VB这块即将干涸的田。虽然windows7明确支持VB6,但现在这种频率的更新换代,总得有种危机感。
    .net是个趋势,微软不倒,.net不灭。
      

  5.   

    LZ不要消极
    2000年VB不再更新 而那时我都还没听过VB
    现在我一样在努力的学
    学VB不是因为学它有利可图或有前途
    只是一种爱好 一种冲动 一种热情
    以前不是有人说DOS过时了吗?
    现在我就有不少学黑的朋友让我教他们DOS
    有些东西是会越老越香的 
    英雄总有用武之地就算真没用 就算消遣吧 总比去打麻将好
      

  6.   

    谢谢 接分 
    顺便帮忙解决一个问题吧http://topic.csdn.net/u/20090825/11/d33dfa0a-2c8f-41f3-b78e-c70d352c887c.html
      

  7.   

    Me, too!
    C#兼合的VB与VC的优势, 开发应用程序方便性大大加强, VB的前途...
    似乎语言的前途好与不好, 对高级程序员的影响一直在下降
      

  8.   

    别的语言能实现的功能,VB也能方式,难度不同,没有语言室万能的VB虽然简单,现在我感觉自己还没有入门
      

  9.   

    虽然我用vb用得最多,但是感觉vb6效率低,兼容性也不怎么好。升级到vb.net之后还不如用c#,至少语法简洁很多。Delphi还不Delphi2007都支持.net了,但是asp.net火得很,java虽然牛B,开发Winform就不如.net 强了。vc++6.0太繁琐了,vc++.net 不会用,不知道怎么样。
      

  10.   

    vb6至少还可以再用上10年,不信等着看吧。现在许多的企业、家庭还是老机器;工业控制更不需要高配置计算机。只是市场份额少了,如果你是专业程序员,可以很快转到VB.NET,VB.NET并不比C#差。office里的 VBA,AUTOCAD里的VBA。这种语法真的很简单!
      

  11.   

    vb 是经典!也是算是曾经的看家东西!
    个人认为vb不会被微软抛弃的吧 !!
      

  12.   

    是的,但是他们新的系统显然不会再用VB。
    见识过用友用VB开发程序的源代码,这样的代码维护能力有限。如果维护成本>开发新系统的话,我想他们会放弃的。当然他们还有一批用VB的老员工,这个需要时间的。
      

  13.   

    赞同。
    VB的定位我觉得就是桌面应用程序或者是原生Win32桌面应用程序。但是就是这个定位,仍然在和C#或者是Delphi、VC++的较量中败下阵来。
      

  14.   

    BS出现在云计算以前,BS不像云计算那样,它是轻量的。
    和云计算这样概念化的东西相比BS的普及已经是不争的事实了。
      

  15.   

    你说的这个也可以理解为我说的“VB本身过于简单——因此它支持的东西实现起来超乎想象的简单,他不支持的东西,超乎想象的复杂,他的扩充性不好,因此微软为VB设定了一些常规开发的任务集就决定了VB能做什么。”。我觉得精通VB是使用VB做VB预想应该做的领域,而不是透支VB。VB内嵌汇编,比直接用汇编还难,Geek研究这样的东西以资一乐尚可,可是作为商业开发却已经没有意义了。
      

  16.   

    10年以后还有人用VB我相信,现在也有人用PowerBuilder和FoxPro呢。但是10年后的VB可能非常不入流。
    如果说VB还能用10年,那么Java、.NET恐怕还能用20年,C++至少还能用50年。至于硬件价格,现在低贱的难以想象,2GB的内存条也只要几十元,可以这么说,连老机器运行Windows Vista或者Windows 7都没有任何问题。原来我也以为工业控制都使用那种386、486,500MB的硬盘,ISA的扩展卡,现在发现完全错了,工业控制用的电脑居然比家用PC更好,固态硬盘,SAS,至强的处理器……他们采用新电脑的理由是:工业控制需要高可靠性,老的电脑可靠性不足。有人说配置高了是浪费,可是现在的情况是,高配置的和低配置的一个价格,甚至更便宜……
      

  17.   

    赞同
    事实上微软已经抛弃VB很多年。呵呵。(不是说VB.NET)
      

  18.   


    08年时用友发布了一个U盘版的记账宝,也是在去年,用友依然选择了用VB开发的,他们为什么不选择用其他语言呢>也许在用友眼里,VB开发的软件依旧能满足国人.
      

  19.   

    最老的C语言现在还很流行呢 
    只要用到unix的系统,大多都还在用纯C语言VB开发点小的应用程序还是非常得心应手的,能解决问题是关键。等到用VB不能完成任务的时候,我想我会换的,现在还早的很
      

  20.   

    用惯了VB,看了一段时间的c#,偶然地发现,VS2005确实很好用。
      

  21.   

    掌握语言才是王道,听说谷歌新的什么手机平台的开发工具采用的basic语言,真是可喜可贺啊
      

  22.   

    恭喜楼主!!!
    我基本不会VB.
    不过感觉这不也不是我的错,因为我基本是用到什么学什么.
    偶尔写算法,底层的东西,肯定是用C,
    写应用,我喜欢用C#,java有时也简单的用用,从没用过VB.
    所以觉得楼主说VB前景不好,我有同感,因为连我这种菜鸟都用不到,可见VB的市场已经被其他语言压缩的利害.
      

  23.   

    你去看看.NET 4.0,就会发现并行计算、SOA、工作流等是重点技术,这反映出微软对软件未来发展趋势的观点。软件开发的主战场早已从桌面开发转移到网络,老的VB在这方面没有任何优势,所以,它必然会慢慢淡出视线。
    与时俱进吧……
      

  24.   

    语言只是一种工具,不能代表思想
    是VB的简单明了让我接触到了程序,也是
    vb的简单思维也让我们可以使用VS了
    他给我留下的不仅仅是一个开发工具,是一种思想所以不管vb以后还会不会用,我觉得他出现的意义已经达到了
    技术在进步,社会在发展,
    说不定到我们离去的时候就根本没有什么开发语言了,其他更
    高级的东西又出来了呢
      

  25.   

    VB 写的界面的确要比VC方便。虽然有点过时了,不过简单有简单的好处,用好了一样很强。呵呵。
      

  26.   

    这么说的:
      VB在中国台湾省火的时候,大陆这边是倾向于用Dephi
      vb应该不会死,,,会进化,进化成wb。。开玩笑