也谈对VFP的感受

ratc 2006-11-22 07:48:55
加精
也谈对VFP的感受
看了不少如cnszyuxin ()兄弟所论的"VFP 被出卖了吗? "、“VFP的未来”等相关问题,多以VFP的未来发展为忧。而现在MS已承诺VFP的生命期可至少到2014年,不过想来也悲哀VFP竞落到苟延残喘的地步。
多年前(正值dBase/Foxbase如日中天时),本人一直用FOXBASE写数据库应用程序,后因其无法形成真正的.EXE执行码而加用了CLIPPER编译器,想起CLIPPER的优秀至今仍不能释怀,再后来WINDOWS及VISUAL的大行其道使得我们的FOXBASE(DOS)黯如昨日黄花。此时虽有了VFP,却更多的是质疑与其未来命运的担忧。本人也在这种大潮中反反复复,于是乎把VFP、VB、DELPHI、C++、JAVA如小儿的玩具般择来选去,便是在这种无法权衡中过去了8、9年,而今的开发工具、数据库产品又是何等的一佩繁荣景象。唉!不知如何表达自已的诸多感慨...
国内多年来对中专、大专等职业院校都有安排FOXBASE的课程,既便现在也仍然这样,只是多了VFP,更是为了它们而设置了二级评定。这足以影响着两三代人将它垫于怀中,也正因此使得VFP在国内经久不衰。但往往等他们走出社会了解了它的目前处境后都感到了鄂然迷失,是放弃亦或是继续!放弃,该学什么?从哪学起?好学吗?有用吗?要花多少时间才可写程序?一连串的问号堵得自已不知何去何从;继续,自己有基础,国内VFP的资料不缺乏,深究起来不难,甚至也乐于深入,可是,业界频频传出微软停止对它的研发,又十个有九个说它没用处、不好、碰了几次壁后连自己都羞提学的是VFP。
说了这么多,不知是否也有同仁们感同深受,是否也曾经痛苦地彷徨不前。我想一定不是我一个。为了让弟兄们无须徘徊,我想有必要对一些开发工具发表些本人对它们面上的了解及拙见,如有偏差望请海涵。本人认为:DELPHI、C++为系统开发工具,它更具有系统级及大型软件的开发能力;JAVA为网络开发工具,它在网络方面的开发能力极强,更具特色的是可以很好的跨平台;而VB曾经与DELPHI争锋相对斯杀了若干年,按理可以算平起平坐,然我个人让为DELPHI在系统开发方面更具实力,而MS的强大造就的是VB的大众化,有PASCAL基础的人可容易转向DELPHI,VB却容易上手易学。当然它们都有数据库开发能力,只是C++、JAVA学起来难度相当大,若你想自学可要消耗你相当的毅力,其他几种至少界面友好,只要有足够的资料及工具书当可循序渐进。当然,如今它们都往.NET平台上跑了,在.NET上熟优熟劣本人未得体会。而我们的主人公VFP与ACESS皆为桌面型数据库管理开发工具,它们都无法胜任系统级开发与大型数据库开发的能力,我喜欢ACCESS的单一数据库文件的方式,因为这样便于管理维护,但除这点外与VFP比却甚觉一无是处,无以忍受的缓慢速度更与VFP无法同日而语。VFP的优点当然不仅在于它的速度,在此就不一一列举。可是最令我痛心疾首的是自FOXBASE FOR DOS到FOXPRO FOR DOS直至现在的VFP都未能解决无以忍受的表损坏(VFP6.0以后的版是否也这样我不曾知道),或许大家会说可以通过备份来解决这个问题,可是在C/S局域网结构下,特别是即时及大量的服务器访问、增删改,容不得也不实际于时时的备份,如此的企业数据一旦表损坏那就是灾难性的结果。当年我用CLIPPER(早年DOS下的dBase数据库开发编译器)写的宾馆收银系统24小时不停机使用8年中才发生1例这种情况。很多时候我都想问微软为什么CLIPPER能做到,而身为世界第一大软件公司的微软却一直无法解决这个问题呢?这就是本人转学其他开发工具的主要原因,只有在开发数据安全要求不高的单机小程序才用VFP。可是自己却多年来身在其中,对VFP语句的眷恋始终未改。
对本文纂写,我未曾想过指导些什么,贬褒些什么,亦或是论述些什么主题。纯粹是本人的思绪感想,信手写来不曾有何文规章句,望我的FOXER弟兄们见谅!

原与FOXER们共同探讨,QQ281620834 -----山地王
...全文
1900 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2007-03-17
  • 打赏
  • 举报
回复
剛開始做這行時用的就是VFP,對情節之類的說法不太同意,編程工具而已,優勝劣汰。
cime63 2007-02-27
  • 打赏
  • 举报
回复
顶一下
xylegend 2007-01-10
  • 打赏
  • 举报
回复
呵呵,现在还用forDOS版写的程序
在处理某些数据的程序还是fp的。
在dos下要5、6个小时来执行程序,而以前一个delphi程序只要短短几分钟(可惜这个程序是别人写的已经不适合使用)
xylegend 2007-01-10
  • 打赏
  • 举报
回复
帖子确实不错。
我没学过FP,出来工作的时候却时常要用到,于是逼着去接触
说实在话vfp很灵活,似乎是灵活过头了
写的程序在win执行效率实在是不敢恭维,相较其他工具实在粗糙不堪
同样的程序,同样是我自己一人写,vfp数据库执行6小时还不能运行结束
而改用delphi重写,只是2分半钟,得出结果
这是什么天上地下啊,我真无言
lao_bulls 2007-01-02
  • 打赏
  • 举报
回复
不错的帖子
cxmcxm 2006-12-23
  • 打赏
  • 举报
回复
管理软件离不开数据库,用vfp+sql server作二层的c/s不错,个人感觉比用vb,delphi方便很多,速度也快。
dfwxj 2006-12-04
  • 打赏
  • 举报
回复
不能直接访问,可以通过ODBC
wwle 2006-12-04
  • 打赏
  • 举报
回复
vfp 能够直接访问 access吗?
coolyylu 2006-12-03
  • 打赏
  • 举报
回复
dotnet2005处理数据的方式越来越象vfp9那么方便了.

那天dotnet处理数据的便捷性超过vfp了,那么vfp就将被ms收山或者foxer转到dotnet上了.

工具几乎因为他有用而长久存在而发展的.

这个月接了一个单,一家产值将近2亿的科技型公司,选择用vfp,而不是java ,来做为信息系统的开发语言,因为java的维护工作量实在太大了.一切从实际出发,分工不同.

有些企业就是不适合上成型的erp(如金碟),那是一种浪费.
dfwxj 2006-12-03
  • 打赏
  • 举报
回复
coolyylu(将来是我) 说得很对,没有十全十美的工具,只有最合适的工具,合适即美
dfwxj 2006-12-02
  • 打赏
  • 举报
回复
用自己的VFP,让别人说去吧

只要自己觉得好用就行了
cdbqss1 2006-11-30
  • 打赏
  • 举报
回复
从92年开始用foxbase,算来有14年了,一直对它情有独钟。
但,近年来,好象用fox的人少了,软件公司的老大些都不屑用vfp。所以,我在学校上vfp课程时,很多学生也是不屑一顾:“学了以后有什么用嘛!”细想想,真的觉得很悲哀。
iuhg66 2006-11-30
  • 打赏
  • 举报
回复
业余爱好者:
编了个程序,不知错在什么地方
请大家看看
(实在不知怎样发出帖子,只好借这里问问?)
iuhg66 2006-11-30
  • 打赏
  • 举报
回复
班级 班名次 学校编号 考号 市名次 教委校名次 总名次 总分 语文 语名次 数学 数名次 英语 英名次 物理 物名次 化学 化名次 生物 生名次
2 1 240073 112440016 15 1 1 661 116 20 149 5 110 135 97 25 96 33 93 2
4 1 240216 112440069 20 2 2 657.5 119 6 150 1 122.5 13 94 53 89 216 83 126
25 1 538 112440036 27 3 3 654 115 28 145 12 118 33 92 77 93 82 91 9
3 1 240149 112440023 53 4 4 647 113 47 138 34 108 177 100 1 98 14 90 14
1 1 240006 112440001 60 5 5 645.5 111 77 133 71 118.5 30 98 13 100 1 85 79
6 1 240433 112441109 61 6 6 645 101 416 147 8 125 7 100 1 91 139 81 178
3 2 240150 112440037 93 7 7 639.5 111 77 138 34 115.5 70 93 63 95 40 87 41
3 3 240143 112440003 101 8 8 638 119 6 150 1 108 177 83 253 91 139 87 41
1 2 240008 112440012 101 8 8 638 109 114 141 25 108 177 97 25 97 18 86 55
1 3 240011 112440025 115 10 10 636.5 116 20 133 71 117.5 38 98 13 94 66 78 260
3 4 240169 112440019 129 11 11 635.5 118 11 139 30 117.5 38 91 92 89 216 81 178
iuhg66 2006-11-30
  • 打赏
  • 举报
回复
clear all
close all
set talk on
set safe on

public x18,y18,z18,mc18,m18,gkm,km,kms,kmf,ki,cl,cla

*定义cla班级 cl班数 ki科目有关值 kms科目数

cla=1
cl=35
gkm="总分语文数学英语物理化学生物"
ki=1
kms=28

crea tabl 用表(班级 n(2),姓名 c(6),名次1 n(3),名次2 n(3),名次3 n(3),名次4 n(3),名次5 n(3),名次6 n(3),名次7 n(3),名次8 n(3),名次9 n(3),名次10 n(3),名次11 n(3),名次12 n(3),名次13 n(3),名次14 n(3),名次15 n(3),名次16 n(3),名次17 n(3),名次18 n(3))
copy to 分析结果
copy to 中间表
copy to 中间班级表
copy to 中间表最低分
copy to 中间表最高分


m1=10
m2=20
m3=30
m4=40
m5=50
m6=60
m7=70
m8=80
m9=100
m10=120
m11=150
m12=200
m13=250
m14=300
m15=350
m16=400
m17=500
m18=600

mc1=0
mc2=0
mc3=0
mc4=0
mc5=0
mc6=0
mc7=0
mc8=0
mc9=0
mc10=0
mc11=0
mc12=0
mc13=0
mc14=0
mc15=0
mc16=0
mc17=0
mc18=0

clos all

do whil ki=<kms

use 考试成绩.DBF

kmf=subs(gkm,ki,4)
km=subs(gkm,ki,2)+"名次"

sort on &km to 排序
use

use 排序
go top
z1=m1-1
z2=m2-m1-1
z3=m3-m2-1
z4=m4-m3-1
z5=m5-m4-1
z6=m6-m5-1
z7=m7-m6-1
z8=m8-m7-1
z9=m9-m8-1
z10=m10-m9-1
z11=m11-m10-1
z12=m12-m11-1
z13=m13-m12-1
z14=m14-m13-1
z15=m15-m14-1
z16=m16-m15-1
z17=m17-m16-1
z18=m18-m17-1

x1=&kmf
skip z1
y1=&kmf
skip
x2=&kmf
skip z2
y2=&kmf
skip
x3=&kmf
skip z3
y3=&kmf
skip
x4=&kmf
skip z4
y4=&kmf
skip
x5=&kmf
skip z5
y5=&kmf
skip
x6=&kmf
skip z6
y6=&kmf
skip
x7=&kmf
skip z7
y7=&kmf
skip
x8=&kmf
skip z8
y8=&kmf
skip
x9=&kmf
skip z9
y9=&kmf
skip
x10=&kmf
skip z10
y10=&kmf
skip
x11=&kmf
skip z11
y11=&kmf
skip
x12=&kmf
skip z12
y12=&kmf
skip
x13=&kmf
skip z13
y13=&kmf
skip
x14=&kmf
skip z14
y14=&kmf
skip
x15=&kmf
skip z15
y15=&kmf
skip
x16=&kmf
skip z16
y16=&kmf
skip
x17=&kmf
skip z17
y17=&kmf
skip
x18=&kmf
skip z18
y18=&kmf

go top
use

do whil cla=<cl
use 排序

count for 班级=cla .and.&km=<m1 to mc1
count for 班级=cla .and.&km=<m2 to mc2
count for 班级=cla .and.&km=<m3 to mc3
count for 班级=cla .and.&km=<m4 to mc4
count for 班级=cla .and.&km=<m5 to mc5
count for 班级=cla .and.&km=<m6 to mc6
count for 班级=cla .and.&km=<m7 to mc7
count for 班级=cla .and.&km=<m8 to mc8
count for 班级=cla .and.&km=<m9 to mc9
count for 班级=cla .and.&km=<m10 to mc10
count for 班级=cla .and.&km=<m11 to mc11
count for 班级=cla .and.&km=<m12 to mc12
count for 班级=cla .and.&km=<m13 to mc13
count for 班级=cla .and.&km=<m14 to mc14
count for 班级=cla .and.&km=<m15 to mc15
count for 班级=cla .and.&km=<m16 to mc16
count for 班级=cla .and.&km=<m17 to mc17
count for 班级=cla .and.&km=<m18 to mc18

use

sele 2
use 中间表.dbf
zap
repl 班级 with cla
repl 姓名 with km
repl 名次1 with mc1
repl 名次2 with mc2
repl 名次3 with mc3
repl 名次4 with mc4
repl 名次5 with mc5
repl 名次6 with mc6
repl 名次7 with mc7
repl 名次8 with mc8
repl 名次9 with mc9
repl 名次10 with mc10
repl 名次11 with mc11
repl 名次12 with mc12
repl 名次13 with mc13
repl 名次14 with mc14
repl 名次15 with mc15
repl 名次16 with mc16
repl 名次17 with mc17
repl 名次18 with mc18
use

sele 3
use 中间班级表
appe from 中间表
use

sele 1
cla=cla+1

sele 4
use 中间表最高分
repl 班级 with "最高分"
repl 名次1 with x1
repl 名次2 with x2
repl 名次3 with x3
repl 名次4 with x4
repl 名次5 with x5
repl 名次6 with x6
repl 名次7 with x7
repl 名次8 with x8
repl 名次9 with x9
repl 名次10 with x10
repl 名次11 with x11
repl 名次12 with x12
repl 名次13 with x13
repl 名次14 with x14
repl 名次15 with x15
repl 名次16 with x16
repl 名次17 with x17
repl 名次18 with x18

use

sele 5
use 中间表最低分
repl 班级 with "最低分"
repl 名次1 with y1
repl 名次2 with y2
repl 名次3 with y3
repl 名次4 with y4
repl 名次5 with y5
repl 名次6 with y6
repl 名次7 with y7
repl 名次8 with y8
repl 名次9 with y9
repl 名次10 with y10
repl 名次11 with y11
repl 名次12 with y12
repl 名次13 with y13
repl 名次14 with y14
repl 名次15 with y15
repl 名次16 with y16
repl 名次17 with y17
repl 名次18 with y18

use

sele 6
use 分析结果.dbf
appe from 中间表最高分
appe from 中间表最低分
appe from 中间班级表
use

endd

ki=ki+4

sele 7
use 中间班级表
zap
use

endd

use 分析结果.dbf
COPY TO 各班名次比较.dbf
COPY TO 各班名次比较.xls TYPE XL5

quit




十月鹰飞 2006-11-27
  • 打赏
  • 举报
回复
好文章,VFP的表损坏确实是FOXER心中永远的痛,自己写的软件都是因为这一点被看起来不够专业。
「已注销」 2006-11-25
  • 打赏
  • 举报
回复
VF,现在都出到10.0V的了,9.0V和10.0V我没搞到中文版的,而VF8.0,我找到个汉化版的.
对于中小程序来说,这个已经够了.

VF,对于个人一般中小应用程序的编写来说,易上手些,何况VF资料国内有大把的......

楼上谈到"表易损坏",这个没有对的,啥玩意也不是一成不变的,只要存在,就有它存在的道理,就有人认可的道理.

试想一下,全国有多少人学VF,是不是每个人都走向编程方面发展,如果不是,好就不用再说啥子VF的歪道理来了.

谢谢.
mgan 2006-11-24
  • 打赏
  • 举报
回复
呵呵
什么事情都是相对的
主要看你用他做什么了
:)
小的DD用VFP也还是不错的
简单快捷
cnszyuxin 2006-11-24
  • 打赏
  • 举报
回复
我也是刚刚发现这个东西.已经改过来了.在我的技术社区,修改我社区信息里可以修改.^_^
ratc 2006-11-24
  • 打赏
  • 举报
回复
请问十豆三兄弟:很多用户都是字母的,这样不好记忆,为什么没有个呢称什么的也好记一些,为什么你的名称后的()里可以显示(十豆三),我要加的话应如何加?谢谢!
我好像觉得VFP论坛这里还挺有人气的,其他地方的论坛好冷清。
加载更多回复(10)

2,726

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧