回 帖 发 新 帖 刷新版面

主题:一个老VFP爱好者说说他的VFP之旅

我2000年开始苦学VFP,主要参考的书是《VisualFoxPro6.0中文版入门与提
高》[清华大学出版社]和《VisualFoxPro6.0入门与应用实例》[李俊德编著 清华大学出版社]2本书。尤其是后一本书,完全可以称的上是当今VFP学习中的经典书籍,你看了它,才知道以往所看的一切VFP类的书和教程都是狗屁!不可能再有书能超过它了,我也完全是靠了它才真正进入并进而掌握VFP的。如果你打算在VFP方面有所长进,非买这本书不可!
     我同时也学了VB6.0、Delphi7.0、PowerBuilder8.0和ASP,基本上都是学习做管理系统。总的感觉是:VB的确简洁明快,功能不凡,我现在有写小程序还在用它做;Delphi很庞大,也比较罗嗦,不过功能强大,让人惊叹,堪称完美,但也复杂,不如VB简单;PowerBuilder8.0简直是狗屁,罗嗦复杂,莫名其妙,功能却幼稚可笑,真不懂一些人为什么还在那里硬撑着说它强大,学它简直是浪费生命,根本不能与VFP相比;ASP很有趣,实际需要掌握的东西很少,但功能强大,简直无所不能,在里面只有想不到没有做不到的,不过要有一点VB的基础编程知识,尤其是它是网络性的编程,前景广阔,我现在正在玩它。:)
    最后说说VFP。说实话,我心情很复杂,我曾经是VFP的狂热拥护者,progranfan是我经常上的网站,我在CSDN的VFP论坛也经常出现,为VFP与不少人打过嘴官司,你可以到那里看看我的一些帖子的。VFP入门并不简单[当然入门后就能轻松掌握了,它要人上的是陡坡,不象其它编程语言那样进门容易,而达到掌握却是长途漫漫],如果你以前从未学过VB之类的编程语言,你可能还不以为然,如果你学过,你简直觉得VFP语言实在糟透了,莫名其妙不说,还很罗嗦,单个表单必须放在同一目录下,不想遭这个罪的就要搞表单集,界面弄的一塌糊涂;在表单的启动处还要对窗口进行一些莫名其妙的设置,开始还要搞什么READ EVENTS ,结束要CLEAR EVENTS ,不然编译出来的EXE文件鬼影一闪就不见了(我曾为这个,将别人的原代码一行行删除排查,花费了3个月才最终搞清楚);还有菜单这种在Deiphi中做起来简直象好玩似的东西,在VFP中要用编辑器,如果要出现在表单上还要搞什么顶层表单;每行程序都要搞this.text1.text这样罗嗦的语法。最终做出来的东西是:界面象玩具,幼稚可笑;莫名其妙的出现错误提示,总是某个变量出现错误,容错功能实在很差;前端界面与后端数据库一损俱损,一荣俱荣,哪个出了问题,包括索引文件出了问题,整个系统就报废了,而重装则意味着曾经输入的数据作废。这种客户端与数据库缠在一起,既是VFP的特点和优点,也是其致命弱点,而用VB+ACCESS、Delphi+ACCESS或SQL2000做的管理系统,客户端界面不完善,重做编译安装,数据库不受影响;数据库出了问题,只需对其进行改造,客户端界面不受牵连。通过ODBC或BDE或OLEDB Privider这根“线”将客户端界面和数据库这两颗“珠”联系起来,其中一者坏了,顶多就是解开“线”重新连接一次罢了。所以,学了VFP,最终还是回走向VB+ACCESS、Delphi+ACCESS或SQL2000做管理系统这条路,VFP不过是热了一下身。也正是这样,注定了VFP是一个悲剧性的东西,而其实,它却的确是一个非常有特色,非常方便快捷的数据库系统开发工具。
    别的不说,就进入VFP之快,就让人很爽,再看看Delphi之类的,我操,等的老婆都要生完孩子了。VFP做出来软件体积很小[只有VC++做的才可与之相比],而且还能在不同系统平台上运行[比起另一跨平台的JAVA老太太它姥姥似的浪费人民生命的奇慢无比,简直就象奔驰之与蜗牛],运行速度奇快,搜索数据之快天下第一,它独特的过滤和查找功能没有哪种语言能及。在熟练掌握语言后,开发速度也非常快;如果不怕麻烦,有创意和决心,它最薄弱的界面问题也是可以得到很大改观的。再看看它很具特色的“自定义属性”、“自定义函数”、“存储过程”,自定义库等,独特而实用,此外非常底层化、精细化的语言,完全掌握后,你会对数据库系统的开发有更清晰完整的认识,而不是除了只会白痴一样的搬一大堆控件来实现功能外,连行正确的程序都编不出来。想真正的通过程序而不是控件来实现并明白数据库系统的工作原理,VFP比Delphi都要强。不过VFP的并不完全面向对象也限制了它功能大发挥,但对于并非比尔·盖次的我们老百姓程序员或爱好者来说,这种限制我实在感觉不到。
    VFP的优点实在太多,我一下子也说不完,何况大家也没那么多时间听了。
    现在我改用Delphi+SQL2000或ASP+ACCESS2000或SQL2000做管理系统了,原因很多,相信许多学VFP的人学到一定程度,基本上也会走我这条路的,到那时,或许我今天没说的东西,他们心里已经明白了。不过,有时间和兴趣,我还会用VFP做一些东西,或建议别人学VFP的,这样做,或许还是因为不能最终忘情于它吧。   hbgth  2004年6月8日下午于武汉

回复列表 (共111个回复)

101 楼

我也是VFP的菜鸟,对于这个问题,我是想,可能要怪也就只有去怪微软的开发者,这也就是VFP的一个不足吧!
  不过它也不是一无是处,我还是觉得它小巧玲珑做一些的程序还是够用了!

102 楼

用了VFP差不多7年了,还没有它解决不了的数据问题!!!

103 楼

我用VFP已有10来年了,是从FOXBASE开始的,我认为VFP虽说不上是最好的数据库语言,但对于中、小型数据库系统,他也可以说是最好的选择,记得几年前就有人讲VFP过时了,MS不支持VFP系统了,可现在不还是出了VFP9,这就说明其地位和作用。
    VFP是不是好的数据库系统,这要看你要做一个什么样的数据库系统,如果是一个中、小企业自己用的系统,VFP就可以,是个不错的选择,但你如果做一个大型系统,建议你不要用VFP。
    VFP简单,易学是他的优点,但他也有缺点,明显的缺点是数据文件多,有很多表文件、索引文件等等,更重要的是一旦索引文件坏了(经常发生,我就遇到很多次),表就无法打开,因此,用VFP做系统就要特别注意数据库备份,以防万一。
    如果你是个人开发数据库系统,解决工作上的问题,VFP足矣。
    如果你以此讨生活,想加入一个团队,解决小康问题,用别的吧。

104 楼

精辟之谈.我是初学VFP,学它原因是因为多年前学过foxplus,感觉vfp用作数据库非常方便

105 楼

[em2]我学习VFP也是从foxbase开始,那时对它有特别的宠爱,经常做些小程序,觉得不错,只是代码都是自己一行行的写,不象现在有可视控件可以用,也因为如此,让我这种学了结构化程序设计的人倒无所适从的感觉,设计一些程序时总想着老一套的设计方法,一下手就感觉有难度了,开始对自己是不是适合学vfp这种语言产生了怀凝,但学学其它语言你就会明白,其实就java等一部分语言给你有以前的那种感觉外,其它都已经是面向对象编程。(其实面向对象编程使程序开发更容易了)我也正努力学习和习惯此类方法。其实vfp从foxbase到现在的vfp9已经有非常大的进步了,与basic到vb.net等进步我看也不逊色,其它语言能做到的,除C语言和java,还有我没有接触过delphi外,在我看来都差不多,大家都有许多的功能是借用第三方(一般是C)开发的控件或windows带的组件来完成的,现在vfp也能这样!而且大家可以上网找出许多优秀的例子,我们的其他优秀的朋友用vfp做出了涉及各方面的各种程序,功能一点都不差!学习是一个永远的过程,一种语言也会随我们的学习和社会及技术的发展而发展!至少目前是如此![em1]

106 楼

[em2]我学习VFP也是从foxbase开始,那时对它有特别的宠爱,经常做些小程序,觉得不错,只是代码都是自己一行行的写,不象现在有可视控件可以用,也因为如此,让我这种学了结构化程序设计的人倒无所适从的感觉,设计一些程序时总想着老一套的设计方法,一下手就感觉有难度了,开始对自己是不是适合学vfp这种语言产生了怀凝,但学学其它语言你就会明白,其实就java等一部分语言给你有以前的那种感觉外,其它都已经是面向对象编程。(其实面向对象编程使程序开发更容易了)我也正努力学习和习惯此类方法。其实vfp从foxbase到现在的vfp9已经有非常大的进步了,与basic到vb.net等进步我看也不逊色,其它语言能做到的,除C语言和java,还有我没有接触过delphi外,在我看来都差不多,大家都有许多的功能是借用第三方(一般是C)开发的控件或windows带的组件来完成的,现在vfp也能这样!而且大家可以上网找出许多优秀的例子,我们的其他优秀的朋友用vfp做出了涉及各方面的各种程序,功能一点都不差!学习是一个永远的过程,一种语言也会随我们的学习和社会及技术的发展而发展!至少目前是如此![em1]
大家一起努力吧!

107 楼

听君一席话,我现在对学习VFP是越来越有信心了,我是一名计算机专业的在校生,今年大二了,学校开了VFP选修,大家都说学VFP没前途,可是我却喜欢她的简单,入门快!边学边做,很有成就感,不像其他语言那些,一开始学就要研究那些汉诺塔,八皇后的问题,让人很没信心,学了一年还不知道个什么东西,可是学VFP就不同了,今个学期才刚学,现在我就可以用她来做个小系统了,很有成就感,相信一直努力下去的话,我可以做到更好!

108 楼

看了这么多热闹的讨论,我的心情很不平静,因为我是VFP狂热的追求者,使用已三年余,单机版的程序设计自以为很得心应手,但网络版的资料实在太难寻找,能否请各位高手指点迷津,不胜感激.我将继续热爱VFP!

109 楼

楼上各位大侠好. 看了楼上各位发言,感慨颇多.我刚学foxpro一个月,只是为了工作吧.我在学校时学的C#.Net+SQLServer(access),asp.net+SQLServer(access).如今出来工作了老板非让用VFP做,没办法,只好硬着头皮学了.学了一个月,感觉它的确容易,不过做的过程中还是会出现很多错误.唉,以后还要继续努力了.

110 楼

看了各位大侠的发言,让我这迷茫站在十字路口的菜鸟有了明确方向,真的不胜感激

我来回复

您尚未登录,请登录后再回复。点此登录或注册