基于delphi70程序设计文档格式.docx
《基于delphi70程序设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于delphi70程序设计文档格式.docx(53页珍藏版)》请在冰豆网上搜索。
Delphi7.0;
数据库
第1章绪论
1.1面向对象程序设计概述
1.1.1从结构化到面向对象
软件的发展是有阶段的,每进入一个新的阶段都是因为原有的开发方式已经不能满足需要了。
结构化的程序开发已经走过了漫长的道路,结构化思想的出现是因为适应了软件发展的需求[1]。
采用结构化程序设计(StructureProgramming)方法,即SP模式,进行应用程序设计时,首先要为解决某个实际问题而确定一个算法,然后抽象算法在计算机的具体实现,为该算法构造适当的数据结构,通过对算法的操作过程体现算法的思想。
也就是说,程序是在数据的某种特定的表示方式和结构的基础上对抽象算法的具体实现。
传统的Pascal语言就是典型的支持结构化程序设计的语言。
应用这种语言进行程序设计时,不仅要实现程序所需要的各种数据结构,而且要求程序员设计出程序执行的每个细节。
结构化程序设计方法本质上是面向过程的,它不能直接反映人们解决问题的思路,因此这种模式存在着固有的缺陷,主要体现在如下两个方面。
(1)程序的可重用性差
目前的应用程序变得越来越大,越来越复杂,但其中有很多重复性的工作,代码重用成为提高编程效率的关键。
采用传统的SP模式,每开发一个新的应用程序,程序员几乎都要从零开始做起,并且要针对具体问题做大量重复而烦琐的工作。
即使重用代码,也只是进行简单的拷贝,要实现的功能稍有不同,就会导致对代码逐行进行修改,也就是说,这种模式不能对已编好的应用程序的某些部分直接继承引用。
(2)维护程序的一致性差
应用传统的SP模式开发应用程序时,数据和方法是分开的,这很可能产生问题空间和方法空间在结构上的不一致。
对程序运行起重要作用的数据一般要做全局处理,若为了新的需要改变某一数据结构,则所有的处理数据的过程都要进行重新考虑,做出必要的修改,以保证与数据的一致性。
因此,要花费大量的精力来维护数据和数据处理过程的一致性,而且还可能产生不少错误。
结构化的程序开发已经不能满足软件发展的需求了。
这个时候,出现了面向对象的编程思想,简称为OO(ObjectOriented)。
面向对象的程序开发被称为OOP(ObjectOrientedProgramming)。
在介绍面向对象的思想之前,应该明确指出,面向对象是一种编程的思想,而与具体的语言无关。
比较流行的支持面向对象的语言有C++、ObjectPascal和Java。
面向对象的程序开发在软件开发领域带来的变革是令人震撼的。
因为它废除了以前的很多思想,引发了软件开发领域的革命。
与结构化的开发思想迥异,面向对象的思想甚至从编程角度对客观世界的认识都发生了极大的变化。
面向对象程序开发的出现,对程序员来说,代码的可重用性大大提高,开发过程中的积累更加容易;
对分析人员来说,代码可以清晰地展现在面前,从而可以很容易地从宏观上进行把握;
对管理人员来说,程序的开发与维护变得更快、更廉价。
从宏观上看,我们用结构化思想开发程序的时候,难点在于对问题的抽象。
也就是当我们遇到了一个具体的问题,会想到用什么样的数据结构可以比较好地反映这个问题;
针对这种数据结构,有哪些比较好的算法。
一个成功的对问题的抽象将在很大程度上决定程序的质量和效率。
可以说,在结构化的思维之下,程序员的任务是将现实问题抽象为机器的思维方式,并用某种语言来实现。
而面向对象更强调的是模拟,也就是说为现实世界的问题建立一个模型,这个模型可以更逼真的反映现实世界。
遇到没有现成的模型可以模拟现实问题,那么可以方便地创建一个模型来。
并且,自然界的种属关系也在OOP的思想中得到了完美的体现。
1.1.2面向对象的程序设计
我们眼中的世界是一个充满了个体的世界,个体之间存在着共性和特性,还存在着千丝万缕的联系。
个体又是发展的,个体的发展影响着个性,通过外界的力量,也可以直接改变个体的个性,这就是离散对象组成集合的世界。
这种对个体世界的理解启发我们,在设计程序时,也可以使用抽象和具体的分析方法,在程序里建立类似于现实世界的个体,让这些个体有个性和行为,与其他个体有合理的联系,这就是面向对象的程序设计方法。
在面向对象模式中,将“对象”作为系统中最基本的运行实体,“对象”中封装了描述该对象的数据(域),处理一个对象时不需要直接访问对象中的域,对象的域通过对象的属性或方法来访问或维护,这就是对象的封装特性。
这种封装特性保证了数据与数据处理过程的一致性。
对象的方法描述对象的行为方式,通过调用同一个对象的不同方法可以激活对象的各种行为,而同一个方法作用于不同的对象时将产
生完全不同的行为,这就是多态性。
采用面向对象模式建立起来的程序由许多不同类型的对象组成,各对象既是独立的实体,又可以通过各自的接口相互作用。
对象中的方法决定要向哪个对象发送消息、发送什么样的消息以及收到消息后如何处理等。
也就是说,OOP模式是以对象为中心的。
由于对象反映了应用领域中具有完整的特征和行为的实体或单元,从程序设计的角度我们可以把它看成模块。
因此,对象具有一定的稳定性,可以被当作一个控件去构成更复杂的应用。
又由于对象一般封装的是某一具体的实际工作的各种成分,因此某一对象改变时,对整个系统几乎没有影响。
为了描述功能相似的对象,OOP中引用了“类”的概念。
类与类之间的关系是层次结构,属于某个类的对象除了具有该类的全部特征外,还具有层次结构中该类上层所有类的全部性质,这种机制称为继承。
面向对象程序设计方法的继承性和模块性,使得新的应用程序可以在原来对象的基础上通过重用和扩展来进行,而不必从头做起或者拷贝原有代码。
这大大提高了程序开发的效率,减少了重新编写代码的工作量,同时降低了程序设计过程中出错的可能性。
面向对象方法的实质是强调从客观世界中的固有规律出发来构造系统,用人类在现实生活中常用的思维方式来认识、理解和描述客观事物。
编写面向对象的程序设计使开发人员能够重复使用工作成果并使程序维护更为容易,并且不易出错。
1.2数据库概述
数据(Date)是数据库中存储的基本对象。
所谓数据,就是能被计算机识别与处理的符号。
数据的种类很多,如数字、文字、表格、图形、图像、声音等都属于数据。
数据库(Datebase,简称为DB)就是以一定的组织方式存储在计算机存储介质中的互相关联的数据集合。
它能以最佳的方式、最少重复、最大独立性为多种应用提供共享服务。
一个数据库常包含许多数据表、索引信息以及其他相关信息。
关系数据库(RelationalDatebase)是目前使用最广泛的数据库,它以关系模型作为数据的组织存储方式。
关系数据库通常包含多张表,表由记录组成,记录由字段组成[5]。
本课题需要开发的PC(PersonalComputer)机程序系数据库类应用程序,它的设计主要包括两个部分:
数据库设计和应用程序设计。
对于数据库的设计,首先要选择适当的数据库产品,选择了一个合适的数据库可以对开发工作起到事半功倍的作用。
Delphi可以访问多种数据库,如VisualFoxPro、Paradox、Access等基于文本的数据库、Oracal、Infomix、MicroSoftSQLServer等大型数据库。
鉴于本课题对数据容量要求一般,选择使用操作简便、容量适中、管理方便、安全性较好的Access数据库。
Access是美国微软公司开发的Office系列应用程序中的一套功能非常强大的数据库管理工具。
它是微软公司Windows操作系统中第一个桌面型关系数据库管理系统(RDMBS)。
不论创建个人、部门或整个企业级的数据库系统,还是创建数据库来管理客户信息,或是创建产品库存跟踪管理系统,Access都可以为组织、查找、管理和共享数据提供功能丰富、简单易用的方法。
Access在本质上是一个关系型数据库管理系统。
关系型数据库有着严格的数学理论基础。
在Access数据库中,数据的逻辑结构表现为满足一定条件的二维表,以统一的“关系”来描述数据对象之间的联系,结构简单、表现力强、符合人们对现实世界事物的认识规律。
因此,Access数据库受到了广大用户的欢迎。
数据库管理系统是指统—管理和控制数据库中的数据资源的功能模块、它构成了数据库系统的核心部分、为用户和数据之间的交互提供了管理界面。
Access为用户提供了功能丰富的交互界面,与其他数据库管理系统相比,Access具有以下一些特点:
(1)界面简单、数据共享性强:
Access完全集成在Windows操作系统中,与Office中的其他控件,如word,Excel等,具行相同的操作界面、一致的设计风格。
因此、对于初学者来说,操作非常简便.人门非常迅速。
Access与word.Excel等同属office系列中的应用程序,在这些应用程序中共享数据非常容易。
用户可以非常方便地将word、Exce1中的数据导人Access,从而避免了许多重复的数据翰人工作;
同时,用户也可以将入Access中的数据导出到word、excel中,—方面可以利用wnrd的编辑、排版功能保存大量的原始数据;
另—方面又司以充分利用Exce1提供的数据分析功能分析Access数据库中的数据,生成各种所需的图表,增强数据的表现力。
(2)数据对象丰富.操作手段便捷:
根据数据库操作的不同特点。
Access为使用者提供了7种对象类型,它们分别是表、查询、窗体、报表、贞(Access2000新增加的对象)、宏以及模块,这些对象分别实现不同的功能。
例如,表对象为用户提供了创建数据库元素的基本手段,利用表提供的功能,用户可以定义数据的结构和类型.浏览并编辑数据库中的数据。
在Access数据库中所有的数据都被组织到表下,而是用户完全以二维表的直观形式对数据库进行定义。
查询对象为用户提供了多种手段.如利用条件查询、多表查询、交叉表查询等处理数据库中的数据,最终使数据库中的数据生成一些对用户有一定意义反映一定事实的信息;
同时,Access以结构化的表格形式为用户创建查询、定义查询条件提供一种快速便捷的手段。
(3)功能强大的向导工具:
Access为使用者提供了各种向导工具,可以帮助初学者迅速学会Access,同时也可以使有经验的绕程者提高工作效率。
这是我们通向入Access的捷径。
(4)集成SQL功能:
Access中集成SQL(结构比查询语言)的功能,有经验的使用者可以充分利用Access的这一功能来更加灵活地创建比较复杂的查询。
(5)多媒体功能:
Access完全支持多媒体功能,在Access数据库中,可以保存、处理诸如声音、图像以及活动视频等多媒体数据,极大的丰富了人们的
数据处理手段,增强了数据的表现能力。
(6)Web功能:
随着Internet的迅速发展,人们更多的数据交流需要依靠网络来实现。
为顺应这种发展潮流,Office系列应用程序中目前已经集成了对网络数据的交流,为此,Access中增加了一种新的数据类型----超级链接。
通过这一功能,可以在数据库文件中插入超级链接,浏览Web页,也可以通过Web页来发布数据库中的数据,或者使用来自网络的数据[9]。
使用高级语言编写应用程序,面对不同的数据存储形式,需要一种简单、一致的应用程序编程接口,使应用程序能够以统一的方式访问和修改各种各样的数据源。
OLEDB可