|
总体上来说,我是比常倾向Freebasic的。虽然我对Powerbasic非常不熟,也对Purebasic相当陌生。
但以下的几点原因让我还是认为Freebasic比较靠谱。
1、Powerbasic和Purebasic都是商业产品,这意味着很不容易获得最新的破解版,加上powerbasic和purebasic在国内的用户量也是同样的不多,要获得这种最新的破解版更加的不容易。(商业产品,编辑器和编译器都有深度捆绑的习惯,你看vb6和c#就知道了),伴随着商业产品的相关组件,也都是需要花钱的(价格不是欧元就是美金,不菲啊)
2、Purebasic对Basic的改动比较大,用起来有一种说不出来的感觉。这里面就有用"\"代替".",没有Function 和sub,而是用Procedure代替。 Repeat : Until 代替do until 等。没有type end type,而是用Structure end structure ……非常的多。虽然这些没有什么,但初次接触,都有一种说不出的别扭。而PowerBasic相对会好一点,但变动也是蛮多的。而Freebasic的语法形式最接近VB6,几乎是一模一样了。
3、不管是PureBasic或powerBasic还是Freebasic,调用com,基本上都是相同的(它们的调用其实都是深受同一篇文章的启发和深度影响),都不太易用。都不如VB6来得简单易用。Freebasic调用com或activeX的ocx,最好使用Axsuite3这个库 (这是采用atl调用方式,控件无须注册,也无须类型库),这一点上VB6不如Freebasic。
4、不管是PureBasic还是PowerBasic还是Freebasic编写com组件,起码要比调用com组件难10倍以上。至于vb6,坦白说,几乎没人想用它写com组件。事实上不管是vba还是vb6使用的绝大多数com组件,都不是vb6写的。
我在这里想说的是PureBasic,PowerBasic,Freebasic,谁也没有在com方面上,有特别突出的易用。
5、Freebasic的编译器是Gcc,虽然它一直说没有优化,但事实上Gcc的编译性能几乎和vc++的性能是同一水平线上。我个人的感觉,如果说纯 c 编译出来的性能是100%的话,那么Freebasic编译出来的性能,差不多是95%。至少比vb6相同代码快10倍以上,这是我个人的感觉。pureBasic和powerBasic应该也是和纯c相当,不太可能快过c。
6、OOP方面,PowerBasic是没有面向对象的,至少到目前是这样。PureBasic我不清楚,好象面向对象也很弱。Freebasic部分面向对象,这是因为它没有多继承,相信应该很快实现多接口继承。Freebasic在写com组件时,可以实现多继承(不过大多数用vb的人,估计是连听都没听过,所以意义不大)。
7、开源。曾经我以为开源的项目多半会中途夭折,没想到很多强大的开源项目,比商业产品生命力更强,创新力更惊人。vb6算是已死了,vbs也是死了,VBA从灵魂上来说也是死了(十几年来,连一个函数,一个语句都没增加过,跟死了没什么两样)。但Freebasic居然活得好好的,而且还在不停地更新,从16位升级到32位,从32位升级到64位,而且支持所有的市面上的CPU类型。真是让我大跌眼镜。有理由相信,Freebasic会被维护很长很长的时间。事实上Freebasic的LLVM后台,也有人开始启动了。开源的力量,有时候真是很可怕。
8、界面库,这是Freebasic的痛处。因为跨平台,意味着,它没有特定的易用的界面库(不是wxwidgets,就是GTK,或者QT,这些库都是极其庞大的)。在windows上,我想推荐的是windows9 这个FB论坛上的界面库。这是俄罗斯人搞的,算是比较全面而易用了。另一个是国人写的xcGUi(炫彩DirectUI),这个DirectUI for Freebasic库,也算是相当不错了。
|
|