具体描述
内容简介
本书是微软(中国)有限公司指定的微软高级技术培训中心(ATEC)系
列教材之一。书中详细介绍了中文版VisualFoxPro3.0的技术细节。全书
分为三部分。第一部分为学生用书,内容包括引言、对象模型、VisualFoxPro
面向对象语言、可视类、表单、网格(注:本书中的“网络”即软件中的“表格”)
调试工具、多用户程序设计、Client/Server编程、OLE自动化、动态链接库、
向导和生成器。第二部分和第三部为实验内容。
本书各章均有授课目的和重点,内容由浅入深,循序渐进,并附有复习
题和实验要求。本书不仅是希望通过微软专家认证考试(MCP)的技术人员
的必备书,同时也可作为从事VisualFoxPro开发的广大技术人员的参考用
书,还可作为同类培训班的教材。
作者简介
目录信息
第一部分 学生用书
引言
0.1简介
0.2课程目的
0.3课程大纲
0.4演示
0.5课程所需材料
0.6设施
第一章 对象模型
1.1概述
1.2面向对象的分析和设计
1.3面向对象编程的特征
1.4术语
1.5属性、事件和方法
1.6实验1:对象模型
第二章 VisualFoxPro面向对象语言
2.1概述
2.2代码复习和演示:例子1
2.3代码复习和演示:例子2
2.4复习
2.5实验2:应用面向对象编程
第三章 VisualFoxPro3.0中的可视类
3.1概述
3.2创建类和子类
3.3演示
3.4复习
3.5实验3:可视类
第四章 表单
4.1概述
4.2数据环境
4.3页框架
4.4设置属性
4.5复习
4.6实验4:表单功能
第五章 使用网格
5.1概述
5.2实验5:用网格工作
第六章 使用调试工具
6.1概述
6.2调试工具
6.3错误处理
6.4复习
6.5实验6:调试和错误处理
第七章 多用户程序设计
7.1概述
7.2锁定和解锁数据
7.3缓冲数据
7.4管理数据
7.5什么是事务支持
7.6复习
7.7实验7:多用户编程
第八章 使用客户/服务器特征
8.1概述
8.2建立一个连接
8.3SQL传递连接
8.4本地和远程视图
8.5复习
8.6实验8:使用VisualFoxPro中的Client/Server特征
第九章 使用OLE自动化
9.1概述
9.2OLE的特征
9.3使用OLE自动化对象
9.4在MicrosoftExcel中使用OLE自动化
9.5用VisualFoxPro控制MicrosoftWord
9.6复习
9.7实验9:使用OLE自动化
第十章 使用动态链接库
10.1概述
10.2使用DLLs的常用信息
10.3复习
10.4实验10:动态链接库
第十一章 课程总结
11.1概述
11.2课程目的
11.3学生网络
11.4能达到什么目的
11.5课程评估
11.6谢辞
附录A 向导和生成器
A.1概述
A.2向导剖析
A.3复习
附录B VisualFoxPro词汇
附录C VisualFoxPro3.0参考资料
第二部分 实验手册
实验1对象模型
1.1目的
1.2练习1项和定义匹配
1.3总结
1.4术语和定义搭配
实验2应用面向对象编程
2.1目的
2.2其它信息
2.3练习1使用作用域操作符(::)
2.4练习2通过编程创建表单
2.5练习3使用DEFINECLASS命令来创建子类
2.6练习4使用AddObject()方法将控制加入到表单
2.7练习5ParentClass属性
2.8可选练习1创建一个更新和跳过记录的表单组
2.9可选练习2创建一个自定义函数
2.10 总结
实验3可视类
3.1目的
3.2实验开始前
3.3关于更多信息
3.4练习1创建表单类
3.5练习2创建和注册Button类
3.6练习3建立现有类的子类
3.7练习4更改现有类
3.8练习5创建容器类
3.9练习6创建控制类
3.10 练习7创建自定义类
3.11 练习8类属性和方法
3.12 可选练习1温度计类
3.13 可选练习2工具栏类
3.14总结
实验4表单功能
4.1目的
4.2实验开始前
4.3关于更多信息
4.4练习1数据环境
4.5练习2多工作期
4.6练习3页框架
4.7练习4使用表单组
4.8练习6OLE控制
4.9练习7通过编程调用一个方法
4.10 练习8常见任务
4.11 可选练习1拖放
4.12 总结
实验5使用网格
5.1目的
5.2开始实验前
5.3关于更多信息
5.4练习1创建一对多表单
5.5练习2使用网格定位
5.6练习3网格定位(续)
5.7练习4使用网格
5.8练习5通过编程添加控制
5.9练习6直观地添加控制
5.10练习7使用Sparse属性
5.11 练习8通过代码使用网格
5.12 练习9更改网格的颜色以及进行浏览
5.13练习10 更改列颜色并重新设置
5.14练习11有不同颜色的网格单元格
5.15练习12 更改活动单元格的颜色
实验6调试和错误处理
6.1目的
6.2关于更多信息
6.3练习1在调试窗口中查看值
6.4练习2在调试窗口中设置中断点
6.5练习3查看表单的属性
6.6练习4命令窗口中的测试行代码
6.7练习5从命令窗口中拖放代码
6.8练习6使用跟踪窗口
6.9练习7创建错误处理例程
6.10总结
实验7多用户编程
7.1目的
7.2开始前
7.3关于更多信息
7.4练习1运行同一程序
7.5练习2事务处理
7.6总结
实验8使用VisualFoxPro3.0中的客户/服务器特征
8.1目的
8.2开始实验前
8.3关于更多信息
8.4练习1建立数据源
8.5练习2建立连接
8.6练习3SQLServer的远程视图
8.7练习4MicrosoftAccess的远程视图
8.8练习5设置临时表属性
8.9可选练习1本地视图相对于远程视图
8.10 可选练习2取得数据
8.11可选练习3用多表创建查询
8.12 可选练习4使用远程视图或本地视图向导
8.13总结
实验9使用OLE自动化
9.1目的
9.2在开始之前
9.3更多的信息
9.4练习1OLE基础
9.5练习2OLE概述
9.6练习3OLE自动化
9.7实验问题
9.8可选练习1Excel嵌入
9.9可选练习2Graph嵌入
9.10 总结
实验10 动态链接库
10.1目的
10.2在你开始之前
10.3更多的信息
10.4练习1Windows目录
10.5练习2通过值和指针传递参数
10.6练习3使用API函数的别名
10.7练习4空值
10.8练习5句柄
10.9练习6隐藏主FoxPro窗口
10.10 练习7使用表单来隐藏主FoxPro窗口
10.11 总结
第三部分 实验答案
实验1答案 对象模型
1.1目的
1.2练习1项和定义匹配
1.3总结
1.4术语和定义搭配
实验2答案 应用面向对象编程
2.1目的
2.2其它信息
2.3练习1使用作用域操作符(::)
2.4练习2通过编程创建表单
2.5练习3使用DEFINECLASS命令来创建子类
2.6练习4使用AddObject()方法将控制加入到表单
2.7练习5ParentClass属性
2.8可选练习1创建一个更新和跳过记录的表单组
2.9可选练习2创建一个自定义函数
2.10总结
实验3答案 可视类
3.1目的
3.2实验开始前
3.3关于更多信息
3.4练习1创建表单类
3.5练习2创建和注册Button类
3.6练习3建立现有类的子类
3.7练习4更改现有类
3.8练习5创建容器类
3.9练习6创建控制类
3.10练习7创建自定义类
3.11练习8类属性和方法
3.12可选练习1温度计类
3.13 可选练习2工具栏类
3.14总结
实验4答案 表单功能
4.1目的
4.2实验开始前
4.3关于更多信息
4.4练习1数据环境
4.5练习2多工作期
4.6练习3页框架
4.7练习4使用表单组
4.8练习6OLE控制
4.9练习7通过编程调用一个方法
4.10练习8常见任务
4.11 可选练习1拖放
4.12总结
实验5答案 使用网格
5.1目的
5.2开始实验前
5.3关于更多信息
5.4练习1创建一对多表单
5.5练习2使用网格定位
5.6练习3网格定位(续)
5.7练习4使用网格
5.8练习5通过编程添加控制
5.9练习6直观地添加控制
5.10练习7使用Sparse属性
5.11练习8通过代码使用网格
5.12 练习9更改网格的颜色以及进行浏览
5.13 练习10更改列颜色并重新设置
5.14练习11有不同颜色的网格单元格
5.15练习12 更改活动单元格的颜色
实验6答案 调试和错误处理
6.1目的
6.2关于更多信息
6.3练习1在调试窗口中查看值
6.4练习2在调试窗口中设置中断点
6.5练习3查看表单的属性
6.6练习4命令窗口中的测试行代码
6.7练习5从命令窗口中拖放代码
6.8练习6使用跟踪窗口
6.9练习7创建错误处理例程
6.10总结
实验7答案 多用户编程
7.1目的
7.2开始前
7.3关于更多信息
7.4练习1运行同一程序
7.5练习2事务处理
7 6 总结
实验8答案 使用VisualFoxPro3.0中的客户/服务器特征
8.1目的
8.3关于更多信息
8.4练习1建立数据源
8.5练习2建立连接
8.6练习3SQLServer的远程视图
8.7练习4MicrosoftAccess的远程视图
8.8练习5设置临时表属性
8.9可选练习1本地视图相对于远程视图
8.10 可选练习2取得数据
8.11可选练习3用多表创建查询
8.12可选练习4使用远程视图或本地视图向导
8.13 总结
实验9答案 使用OLE自动化
9.1目的
9.2在开始之前
9.3更多的信息
9.4练习1OLE基础
9.5练习2OLE概述
9.6练习3OLE自动化
9.7实验问题
9.8可选练习1Excel嵌入
9.9可选练习2Graph嵌入
9.10 总结
实验10答案 动态链接库
10.1目的
10.2在你开始之前
10.3更多的信息
104练习1Windows目录
10.5练习2通过值和指针传递参数
10.6练习3使用API函数的别名
10.7练习4空值
10.8练习5句柄
10.9练习6隐藏主FoxPro窗口
10.10 练习7使用表单来隐藏主FoxPro窗口
10.11 总结
· · · · · · (收起)
读后感
用户评价
我个人对界面设计和用户体验方面一直比较头疼,总觉得在早期的数据库应用开发中,界面往往是“能用就行”,缺乏美感和操作的流畅性。然而,这本书在讲述如何使用Visual FoxPro的表单设计器时,展现出了一种超乎预期的细致和专业度。它没有敷衍地带过,而是深入探讨了控件的事件驱动模型,以及如何通过事件来增强用户交互的响应速度。我特别留意了其中关于快捷键设置和错误信息定制的部分,这些细节过去我都是靠自己反复试错摸索出来的。这本书清晰地指出了最佳实践,比如,如何用最少的代码实现多文档界面的切换,以及如何设计出能引导用户而非困扰用户的输入校验提示。看完相关章节,我立刻动手美化了我正在开发的一个数据录入界面,操作起来顺滑了不止一个档次,连我那些不怎么懂技术的同事都忍不住夸赞新界面“看着舒服多了”。这种对用户友好性的强调,在那个年代的编程书籍中,真是凤毛麟角般的存在。
这本书的封面设计得挺朴实的,拿到手里感觉分量挺实在的,一看就知道里面内容是扎扎实实的。我过去对数据库管理系统一直有点摸不着头脑,尤其是一些老一些的工具,总觉得上手门槛高,文档又晦涩难懂。我本来还担心这本《中文Visual FoxPro3.0编程》会不会也是那种只适合科班出身的程序员看的“天书”。但翻开目录,看到里面对基础概念的讲解居然这么细致,简直是手把手教。比如,它对表结构的设计、索引的建立,甚至是数据类型选择的考量,都用了很多篇幅去解释“为什么”要这么做,而不是简单地告诉你“怎么做”。我记得有一章专门讲事务处理和并发控制,那部分复杂的逻辑,作者居然能用日常生活的例子来类比,让我这个半路出家的学习者也能一下子就抓住了核心要点。这本书的排版也挺人性化,关键代码块都有高亮或特殊的注释,阅读体验上确实比我看过的其他几本编程参考书要友好得多。我感觉它更像是一位经验丰富的老前辈坐在你旁边,耐心地引导你,而不是一本冷冰冰的参考手册。这种教学上的用心,实在让人感到惊喜和信赖。
这本书的语言风格,给我一种非常踏实、不浮夸的感觉。它没有过分强调“高效率”、“颠覆性”这类吸引眼球的词汇,而是用一种近乎严谨的学术态度来阐述技术。作者的文字组织逻辑非常清晰,层层递进,从不跳跃。我最欣赏的是,每当引入一个新的、复杂的概念时,作者总会先在“为什么要学它”和“它解决了什么问题”这两个层面上做铺垫,确保读者在进入技术细节之前,已经建立了正确的认知框架。例如,在讲解如何处理多用户数据锁定机制时,作者先用了好几页篇幅来描述“如果没人管,会发生什么灾难”,这种情景化的描述,比单纯的理论讲解更容易让人产生深刻的记忆。对于那些希望真正掌握一门工具,并用它来解决实际复杂问题的学习者来说,这种‘慢工出细活’的讲解方式,是最高效的学习路径。它教会的不仅是语法,更是一种解决问题的思路和软件工程的严谨态度。
说实话,我买这本书的时候,主要是冲着它对数据库设计思想的阐述去的。现在市面上很多速成教材,往往只教你敲出能运行的代码,但一旦遇到实际业务需求变化,代码就成了意大利面条,谁也理不清头绪。而这本《中文Visual FoxPro3.0编程》最让我眼前一亮的地方,在于它把“结构化思维”植入到了每一个编程范例之中。它不满足于实现功能,更强调如何构建一个健壮、易于维护的系统框架。比如,在讲述如何编写自定义函数和过程时,作者不仅给出了代码片段,还详细分析了参数传递的效率问题和命名规范的重要性,这对于养成良好的编程习惯至关重要。我尝试着按照书中提到的“自顶向下、逐步求精”的原则,去重构我之前那个混乱不堪的小项目,效果立竿见影。不仅代码量减少了,逻辑也清晰多了,调试起来简直是享受。这不仅仅是一本关于某个特定版本的编程指南,更像是一部关于如何进行规范化数据库应用开发的“方法论”书籍,价值远超出了软件版本的限制。
对于需要进行系统维护和性能优化的资深用户来说,这本书后半部分关于数据库底层机制的剖析,简直是如获至宝。我过去常遇到的问题是,程序跑得好好的,数据量一上去就开始卡顿,但又不知道瓶颈在哪里。这本书里对磁盘I/O的模拟、内存缓存的使用逻辑,以及查询优化器的工作方式,都有非常深入的探讨。它用一些非常直观的图表和代码实例,演示了不同查询语句的执行效率差异,特别是针对复杂的 JOIN 操作和嵌套查询,给出了非常具体的优化建议,比如何时应该使用临时表,何时应该依赖数据库自身的索引。这部分内容已经超越了基础教程的范畴,更接近于一本专业的数据库性能调优手册。我甚至发现自己过去依赖的某些“经验之谈”在特定情况下效率是低下的,从而及时修正了我的开发思路。这本书的深度和广度,保证了它在很长一段时间内,都不会因为技术的迭代而被完全取代,因为底层原理是相通的。