主题:[转贴]不要和BASIC过不去(话剧)
2000-07-12· 何进·yesky
近来一段时间,陆续从多家媒体上看到有些朋友对是否还有必要学BASIC语言
的一些看法,其中有一部分人认为“BASIC已经过时,学 BASIC是浪费时间,要学
Delphi或 VC”等。因为他们认为 BASIC有几大“罪状:”
1. 数据类型不够丰富和没有指针变量是 BASIC致命的弱点。
2. BASIC 编译都是编译成为 P- Code或中间码,从理论上讲其效率与真正的编
译代码至少有 5- 10倍的差距。
3.在 Visual BASIC中不能生成自己的控件 !
这似乎是 BASIC的通病:你很容易入门,但当你真正想开发一些程序时,对
不起, BASIC没有这种能力,学 C语言吧。而这意味着学习 BASIC是浪费时间。
”。听到这些对BASIC语言的评论,我作为一名专业的程序设计人员觉得有必要站
出来为 BASIC说几名话 ,谈谈自己的看法。
别的暂且不说,首先就事论事。第一,在 VB中提供了从数值型 (包括 Inte
ger整型、 Long长整型、 Single单精度浮点型、Double双精度浮点型和Currenc
y货币型)到字节型(Byte)、字符串型(String)、日期型(Date)、对象型(
Object)和特有的Variant型等数据类型怎么能说“数据类型不够丰富”,更何况
真有必要的话你完全可自定义相关数据类型。至于没有指针变量,这不应被称为
缺点。因为没有什么程序非得有指针才能完成。而指针的使用往往带来程序的难
以理解和难调试。稍稍处理不当将为软件埋下大量的BUG。可以说指针在很多时候
是弊大于利。也正因如此在JAVA语言中才彻底摒弃了指针。第二,在最新的VB6.
0中,使用了世界级的Visual C++ 6.0优化的代码编译器。我不清楚他们所说的编
译速度有“5-10倍的差距”是如何得来的。如果是把DOS中的QUICK BASIC 拿来
和Visual C++ 6.0来比较,是否有失公允?第三,自从发布VB5.0以来,用BASIC
开发自已的ActiveX控件了,是一件轻而易举的事,因此我对这些朋友是否真用过
VB抱有疑问。至于所谓的“真正想开发一些程序”更是令人费解。类似波音公司
这样的大企业还利用VB来设计原材料管理系统(Materiel Management System,
MMS),不知这样算不算“真正开发的程序”!(相关资料见微软的中文网页http
://www.microsoft.com/china)
编程语言十我们写程序时才有用的一种工具(或许还有在设计时为了要表达自
己的意思而写的伪代码),就象人过河一样,没有人会在过了河以后还背着船的,所
有的程序代码只是表达一种思想,一种方法,你可以觉得这个方法不好,没有什么关
系,但是选择什么样的方法却是看自己现有的基础的,没有扎实的地基是不可能盖
出高大的建筑物的.
编程语言现在有很多种选择,究竟选择什么编程语言,取决于你现有的基础、
你对编程的热爱和所需完成的任务。说实话,VB固然有种种缺点,VC难道就没有
缺点了吗?VC究竟比VB好在什么地方呢?这些优点是不是现在需要的呢?这些问
题我觉得是值得考虑的。
编程工具没有什么好和坏的分别,有的只是是否适用,一个功能在强大的编
程工具,如果是不适用的话,我觉得是没有什么意义的。多余的部分只是浪费了
,又有什么作用? 接着我想问的是为什么有VB?因为VB是一种入门语言,这种语
言的难度是相当的浅的,就象佛家所说的渐悟,因为很多人觉得编程语言太艰难
(刚开始是两进制代码,后来是汇编,在后来是高级语言),首先,这是一个为
大家服务的东西。其次,编程语言是人在使用,所以,编程语言的发展是适应人
的需要发展的。因为有很多人想学编程语言,但是又熬不过刚入门时的那种艰苦
,没有办法,只好找一种简单的方法啦:)
我们看到目前在部分编程爱好者中存在着这样一种不良的倾向,总以为学习
编程的语言越难越复杂就越能体现自己的水平,把编程当做是弦耀自已智商的工
具,喜欢贪大求全,而忘记了我们编程的真正目的。事实上不论我们使用哪一种
计算机语言开发程序都是为解决某个具体的问题。这其中最首要的当然是要能快
捷方便的开发程序并获得正确结果。当然我不否认VC和Delphi开发的程序在运行
速度和程序文件长度上有一定的优势。但在计算机运行速度和存贮容量发展如此
快速的今天,这点优势还不足成为我们放弃BASIC的理由。因为对于开发大多数软
件而言,在保证正确性的前提下,我们更需要的是有一个尽量短的软件开发周期
。比如同样一个功能的程序用VB开发要两周,而用VC也许要五倍于此的时间。如
果你是软件公司的老板,在时间就是一切的今天,为了把握更多的商机,你希望
用哪一个呢?还有就程序的可读性和易维护性而言,VB明显的比VC好很多。能让
别人很容易的读懂你的程序,在集体开发程序时显得非常重要。要和道如今的软
件开发已告别了单兵作战的作坊模式,而是更强调发挥团队的合作精神,单打独
斗将永远成不了真正的程序设计员。另外microsoft公司对BASIC一贯的支持也是
我选择BASIC的原因所在。在WIN98中已集成了VB的运行库;在最新的Directx 7.
0中更是增加了对BASIC的支持。这意味着我们用BASIC编出的程序将能和最新的操
作系统完美结合。这使得VB在多媒体性能和对网络应用的支持等诸多方面丝毫不
逊色于其它的开发工具。在web网页设计中的VBScript和office系列软件的“宏”
中到处都有BASIC的身影。学习使用BASIC真可谓“一石多鸟”。正因如此Visual
Basic成为了世界上最流行的开发工具,而拥有上百万的开发商。
学习和使用编程语言没有那种语言一定好和一定不好的分别,只有在哪个时
期适合使用什么语言的分别。就连微软都将VC的发展定位成系统分析员使用的编
程工具了。 学习编程语言往往是需要扎实的基础的,所以我并不是很希望大家在
学的时候学的太杂,不如一种编程语言精通了再说其他的来的好。
当然我在此并非要说服任何人无条件的放弃已学的其它计算机语言而选择BA
SIC。不过请始终计住一点:计算机只是我们人类的工具,“适用、好用、够用”
是我们的原则,程序设计语言也是如此。喜欢用BASIC就用BASIC,喜欢用C++就
用C++,你要使用Delphi我也不反对。但是别老和BASIC过不去,轻易的就下要
由谁取代谁的结论。请大家不要把编程语言的差异看的这么重要,差异本来就是
有的,关键是怎么样利用,但是很遗憾,我没有看到这个方面的讨论,不知道是
不是被大家忽略了呢?编程以后一定不是一两个人能完成的了的,需要的是大家
的配合,光WIN98就是很多编程员合作的结果,更不要说WIN2000的4年时间和大量
的人力了。 “青菜萝卜各有所爱,己所不欲勿施于人”。任何一种开发工具都有
它的优势,根据具体情况量体裁衣,做出正确的选择才是真道理。
近来一段时间,陆续从多家媒体上看到有些朋友对是否还有必要学BASIC语言
的一些看法,其中有一部分人认为“BASIC已经过时,学 BASIC是浪费时间,要学
Delphi或 VC”等。因为他们认为 BASIC有几大“罪状:”
1. 数据类型不够丰富和没有指针变量是 BASIC致命的弱点。
2. BASIC 编译都是编译成为 P- Code或中间码,从理论上讲其效率与真正的编
译代码至少有 5- 10倍的差距。
3.在 Visual BASIC中不能生成自己的控件 !
这似乎是 BASIC的通病:你很容易入门,但当你真正想开发一些程序时,对
不起, BASIC没有这种能力,学 C语言吧。而这意味着学习 BASIC是浪费时间。
”。听到这些对BASIC语言的评论,我作为一名专业的程序设计人员觉得有必要站
出来为 BASIC说几名话 ,谈谈自己的看法。
别的暂且不说,首先就事论事。第一,在 VB中提供了从数值型 (包括 Inte
ger整型、 Long长整型、 Single单精度浮点型、Double双精度浮点型和Currenc
y货币型)到字节型(Byte)、字符串型(String)、日期型(Date)、对象型(
Object)和特有的Variant型等数据类型怎么能说“数据类型不够丰富”,更何况
真有必要的话你完全可自定义相关数据类型。至于没有指针变量,这不应被称为
缺点。因为没有什么程序非得有指针才能完成。而指针的使用往往带来程序的难
以理解和难调试。稍稍处理不当将为软件埋下大量的BUG。可以说指针在很多时候
是弊大于利。也正因如此在JAVA语言中才彻底摒弃了指针。第二,在最新的VB6.
0中,使用了世界级的Visual C++ 6.0优化的代码编译器。我不清楚他们所说的编
译速度有“5-10倍的差距”是如何得来的。如果是把DOS中的QUICK BASIC 拿来
和Visual C++ 6.0来比较,是否有失公允?第三,自从发布VB5.0以来,用BASIC
开发自已的ActiveX控件了,是一件轻而易举的事,因此我对这些朋友是否真用过
VB抱有疑问。至于所谓的“真正想开发一些程序”更是令人费解。类似波音公司
这样的大企业还利用VB来设计原材料管理系统(Materiel Management System,
MMS),不知这样算不算“真正开发的程序”!(相关资料见微软的中文网页http
://www.microsoft.com/china)
编程语言十我们写程序时才有用的一种工具(或许还有在设计时为了要表达自
己的意思而写的伪代码),就象人过河一样,没有人会在过了河以后还背着船的,所
有的程序代码只是表达一种思想,一种方法,你可以觉得这个方法不好,没有什么关
系,但是选择什么样的方法却是看自己现有的基础的,没有扎实的地基是不可能盖
出高大的建筑物的.
编程语言现在有很多种选择,究竟选择什么编程语言,取决于你现有的基础、
你对编程的热爱和所需完成的任务。说实话,VB固然有种种缺点,VC难道就没有
缺点了吗?VC究竟比VB好在什么地方呢?这些优点是不是现在需要的呢?这些问
题我觉得是值得考虑的。
编程工具没有什么好和坏的分别,有的只是是否适用,一个功能在强大的编
程工具,如果是不适用的话,我觉得是没有什么意义的。多余的部分只是浪费了
,又有什么作用? 接着我想问的是为什么有VB?因为VB是一种入门语言,这种语
言的难度是相当的浅的,就象佛家所说的渐悟,因为很多人觉得编程语言太艰难
(刚开始是两进制代码,后来是汇编,在后来是高级语言),首先,这是一个为
大家服务的东西。其次,编程语言是人在使用,所以,编程语言的发展是适应人
的需要发展的。因为有很多人想学编程语言,但是又熬不过刚入门时的那种艰苦
,没有办法,只好找一种简单的方法啦:)
我们看到目前在部分编程爱好者中存在着这样一种不良的倾向,总以为学习
编程的语言越难越复杂就越能体现自己的水平,把编程当做是弦耀自已智商的工
具,喜欢贪大求全,而忘记了我们编程的真正目的。事实上不论我们使用哪一种
计算机语言开发程序都是为解决某个具体的问题。这其中最首要的当然是要能快
捷方便的开发程序并获得正确结果。当然我不否认VC和Delphi开发的程序在运行
速度和程序文件长度上有一定的优势。但在计算机运行速度和存贮容量发展如此
快速的今天,这点优势还不足成为我们放弃BASIC的理由。因为对于开发大多数软
件而言,在保证正确性的前提下,我们更需要的是有一个尽量短的软件开发周期
。比如同样一个功能的程序用VB开发要两周,而用VC也许要五倍于此的时间。如
果你是软件公司的老板,在时间就是一切的今天,为了把握更多的商机,你希望
用哪一个呢?还有就程序的可读性和易维护性而言,VB明显的比VC好很多。能让
别人很容易的读懂你的程序,在集体开发程序时显得非常重要。要和道如今的软
件开发已告别了单兵作战的作坊模式,而是更强调发挥团队的合作精神,单打独
斗将永远成不了真正的程序设计员。另外microsoft公司对BASIC一贯的支持也是
我选择BASIC的原因所在。在WIN98中已集成了VB的运行库;在最新的Directx 7.
0中更是增加了对BASIC的支持。这意味着我们用BASIC编出的程序将能和最新的操
作系统完美结合。这使得VB在多媒体性能和对网络应用的支持等诸多方面丝毫不
逊色于其它的开发工具。在web网页设计中的VBScript和office系列软件的“宏”
中到处都有BASIC的身影。学习使用BASIC真可谓“一石多鸟”。正因如此Visual
Basic成为了世界上最流行的开发工具,而拥有上百万的开发商。
学习和使用编程语言没有那种语言一定好和一定不好的分别,只有在哪个时
期适合使用什么语言的分别。就连微软都将VC的发展定位成系统分析员使用的编
程工具了。 学习编程语言往往是需要扎实的基础的,所以我并不是很希望大家在
学的时候学的太杂,不如一种编程语言精通了再说其他的来的好。
当然我在此并非要说服任何人无条件的放弃已学的其它计算机语言而选择BA
SIC。不过请始终计住一点:计算机只是我们人类的工具,“适用、好用、够用”
是我们的原则,程序设计语言也是如此。喜欢用BASIC就用BASIC,喜欢用C++就
用C++,你要使用Delphi我也不反对。但是别老和BASIC过不去,轻易的就下要
由谁取代谁的结论。请大家不要把编程语言的差异看的这么重要,差异本来就是
有的,关键是怎么样利用,但是很遗憾,我没有看到这个方面的讨论,不知道是
不是被大家忽略了呢?编程以后一定不是一两个人能完成的了的,需要的是大家
的配合,光WIN98就是很多编程员合作的结果,更不要说WIN2000的4年时间和大量
的人力了。 “青菜萝卜各有所爱,己所不欲勿施于人”。任何一种开发工具都有
它的优势,根据具体情况量体裁衣,做出正确的选择才是真道理。