×

Loading...

Visual Basic宣告死亡

本文发表在 rolia.net 枫下论坛Visual Basic宣告死亡
2001 04 04 杨磊

  【eNews专稿】很抱歉把这个标题放上这个字眼。毕竟这句话要对全世界700多万
的VB程序员负责,其实我也是一名VB的学习者和拥护者。但是事实就是如此,使用
人口多,简单容易上手的微软开发工具Visual Basic,即将面临宣告死亡的命运。

  或许您会说这是反微软基本教义派在造谣,现在VB的版本是VB 6.0,再来不是有
VB 7.0,就是所谓的Visual Basic.NET吗?可是等大家拿到这个新版的VB.NET,或是去要
一份Beta版来看看,现在熟悉VB的人,可以发现己根本无从下手,因为从基本语法开
始已经全都和以前不一样了。目前只熟悉VB的朋友必须重新学起,反倒是会Java/C++
的朋友会发现新的VB似曾相识,因为VB已经改头换面成为物件导向语言,原来那个
比尔盖茨的最爱,从DOS时代就伴随微软使用者成长的BASIC语言已经不复存在。

  先不论这个改变对既有使用者的影响,这应该是一个好的改变。原有的VB优点是
初学者容易上手,很简单就可以拼拼凑凑兜出一个可以执行的小程式,对于入门者或
是功能简单的应用程序来说,实在是个好工具。但是面对目前网络时代这些企业级的
系统开发,旧有的VB实在不胜负荷。很多人会写VB程序,但是如果没有严谨的专案
管理和好的写程序习惯,很容易大家写出一堆很难维护的VB程序码。反观Java或
C++,由于规定严谨,虽然因此造成入门学习障碍比VB高,但是一旦领进门,按照物
件导向分析/设计的脚步一路走来,就会写出漂亮而且易读、易管理的程序。所以微
软这次趁推出.NET的机会,将旧有的VB一次大翻修,正式跨入物件导向的领域,在技
术成长上面来看应该是正确的方向。

  只不过微软每次有新版本,总是不顾旧版使用者的需求。现在VB6.0到VB.NET全
面大翻修,在微软网站上宣称要推出〝VB.NET Upgrade Tool〞用来帮助升级VB 6.0的旧
程序,不过从上面的功能介绍看来它只做了五件事:

  1.变数到物件的型别转换

  2.长短整数型态的转换

  3.移除参数预设的性质

  4.增加阵列范围定义限制

  5.将VB 6.0 Form转换成新的Windows Form

  但是将旧的VB 6.0程序全盘转为VB.NET,岂是这五件事就可以做好的。于是微软
又有另一份长达26页的文件〝Preparing Your Visual Basic 6.0 Applications for the Upgrade to
Visual Basic.NET〞,洋洋洒洒列出一串在写VB 6.0程序时的注意事项,只有这一串条件
都符合了,才有可能用上述的升级工具来作转换。面对目前成千上万行VB程序,各位
VB程序设计师,请大家自求多福。重新改写也许是一种活路,但是如果要重新改写,
为什么不干脆用Java?反正VB.NET也会是物件导向语言,微软另一个神奇宝贝C#则是
根本抄袭自Java和C++,在VB.NET尚未正式上市之前,我倒是建议大家来学Java。J2EE
会是比.NET更完备,而且是目前已经成熟的企业运算架构。如果到时候.NET全部正式
推出,您还是喜欢被微软拥抱的感觉,先会了Java再接触C#或是VB.NET,也许会觉得
得心应手、游刃有余。

  总之,旧的Visual Basic宣告死亡。对于微软号称全世界共有七百万以上个VB程序
设计师们,请不要把希望放在这个〝VB.NET Upgrade Tool〞上面,此举无异是坐以待
毙。在java大行其道的现在,与其苦等新版的VB.NET,不如现在开始学Java。看看正
统的物件导向程序要怎么写,了解微软为什么要全面翻修见贤思齐,将来不管是写
Java或是VB.NET程序都没有问题,保证学习所花的工夫不会白费。去Yahoo上查一
下,看看编程语言一项,VB的支持着越来越少,而Java的则是呈几何级数上升。“真
正精通Java的程序员,才能体会道编程的真谛,才是真正的程序员。”——Mephis。
全世界的程序员,行动起来吧。

  微软推出JUMP专案,协助移植Java到.NET

  产品的命名学,其实这方面最厉害的就是微软。我常想在微软内部一定有个小组
专门负责替产品取名字。之前微软要推出一套程序语言对抗Java,东西还不见踪影,
就先宣布一个很酷的名字,就叫做COOL (Common Object-Oriented Language)。可是后来
的发展就好比太监一样──下面没有了,COOL无疾而终,取而代之的就是现在见到
不知所云的"C#"。现在又有一个具有响亮名称的产品推出,叫做JUMP,四各英文字
母代表Java User Migration Path,缩写就是JUMP,实在让我深深佩服微软命名小组的巧
思,产品好不好是另外一回事。

  这个JUMP,实际上就是要来对付Java的第一步。它的内容是要推出一套工具,帮
助使用者把以前用Visual J++写的Java程序移植到未来的NET平台上。其中包含了自动
将Java程序换为C#的工具,Visual Studio.NET和Java程序整合的工具,以及协助移植
Java专案的咨询服务。不过,这些工具的价格未定,Beta版的推出日期预计是今年上
半年,正式版要到下半年才会上市。

  这个JUMP专案的目的很清楚,就是要Java使用者不再用Java,转而采用微软的 C#
和NET。在微软网站上公布一份JUMP的FAQ,其中最后一个问题很有趣,它的问题是
"这代表微软会支援Java平台吗?"微软的回答是"绝对不是。微软只支援Java这个程序
语言,并且帮助开发者从Java平台转换到.NET平台。那些对Sun的Java解决方案有兴趣
的客户,必须到其他地方去寻求支援。 "

  微软的意思很清楚,这就是微软自始至终对Java的态度——只是一个程序语言,
其他的J2SE、J2EE……,都是微软产品的竞争对手。对Sun和Java阵营来说,目前这个
JUMP专案并不代表太大意义,因为如果是Java用户,谁还在使用内含旧版JDK1.1.4的
Visual J++?况且JUMP之中所谓的自动转换Java程序到C#,听起来好像十分强大,实际
上是个笑话,因为C#根本就是抄袭自Java,基本语法根本一样,只要用最简单的字串
取代/置换功能就可以了,哪需要什么特殊工具?这哪需要什么Beta上半年上市,正式
版下半年上市,根本马上就可以推出,Word或其他文字编辑器就有字串取代功能
了。

  所以微软如果真的在乎自己使用者的需求,真正需要的不是JUMP,而是对于其
他语言的转换工具(如Visual C++、COBOL…….)。现在抢先宣布JUMP,只是为了打击
Java,似乎这才是第一要务。可怜的微软使用者,大家准备面对.NET排山倒海的技术
文件,以及可预期的改版、升级问题吧!更多精彩文章及讨论,请光临枫下论坛 rolia.net
Sign in and Reply Report

Replies, comments and Discussions: