【教学课件】第6章程序结构与结构化设计.ppt
《【教学课件】第6章程序结构与结构化设计.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第6章程序结构与结构化设计.ppt(38页珍藏版)》请在三一办公上搜索。
1、第6章程序结构与结构化设计,本章重点分析Delphi程序结构,并通过学习结构化程序设计知识,进一步掌握结构化、模块化和自顶向下逐步求精的设计方法。最后,再通过一个具体的实例演示结构化程序设计的完整过程,并深入剖析Delphi应用程序的内部构造和代码实现。6.1Delphi程序结构分析6.2结构化程序设计基础6.3结构化设计应用举例6.4 本章小结,6.1Delphi程序结构分析,6.1.1Program主程序6.1.2Unit单元6.1.3单元的引用6.1.4标识符的作用范围,6.1 Delphi程序结构分析,一个Delphi程序由多个称为单元的源代码模块组成。使用单元可以把一个大型程序分成多
2、个逻辑相关的模块,并用来创建在不同程序中使用的程序库。每个程序都有一个首先执行的Program主程序,Program作为主程序块将激活其他执行各种任务的所需的二级程序块(Unit单元)。绝大多数Delphi应用程序都是按照这样部署的。虽然开发过程中的实际程序,都会更复杂一些,但其基本的程序结构与图 6-1所示的相似,图 6-1 Delphi程序的结构,6.1 Delphi程序结构分析,6.1.1 Program主程序,Program主程序就是Delphi中的工程文件。它是一个特殊的单元,类似于C语言中的Main程序,即为应用程序的主程序。一个程序可以由多个Program组成,也可以只由一个Pr
3、ogram组成,Program主程序的基本结构,6.1.1 Program主程序,6.1.2 Unit程序单元,Delphi应用程序中的单元(unit)实际上就是一个程序模块,因此单元是程序模块化的基础。Delphi在Windows程序设计中,每个窗体都对应一个单元。,6.1.2 Unit程序单元,1.单元文件的基本框架Delphi使用单元来建立可重用的程序模块,每个单元都在其各自相应的单元(.pas)文件中保存代码。单元一般由类型(type)、常量、变量以及例程(函数和过程)组成。程序员通过这些单元撰写功能单一的代码,因为他们比较容易维护和修改。最后再将不同的单元引用、汇集,构成大程序。,单
4、元文件的基本框架,6.1.2 Unit程序单元,6.1.2 Unit程序单元,2.接口部分单元接口以保留字interface开始,直到实现部分结束。接口部分用于声明常量、类型、变量、过程、函数等,这些声明对于其它使用了该单元的单元、项目、库、包等是可用的,因此可以称为公共(public)实体。接口部分的结构如图所示。,接口部分的结构,Const;,Type;,Uses;,Var;,函数及过程的声明,Interface,接口部分,6.1.2 Unit程序单元,6.1.2 Unit程序单元,(1)uses子句接口部分包含的uses子句必需紧随保留字interface之后出现。uses子句告诉编译程
5、序:该单元使用了那些其它单元。如果引用了不止一个单元,各单元之间用逗号间隔,形成一个单元引用表。(2)const子句const子句列出具有某个固定值的标识符名字。这些值可以是整形,浮点型、字符串和其他预定义的,或用户定义的数据类型。(3)type子句type子句允许你声明自己的数据类型。这些新数据类型可以是记录,或者是类,或其他。,6.1.2 Unit程序单元,(4)var子句Var子句声明单元输出的变量。也就是说,在单元接口部分所声明的变量都是全局变量,只要其他单元引用了该单元,就能操纵和使用该变量。由于该变量暴露在外,无法预料其他程序单元对该变量值所进行的改动,因此声明全局变量一定要慎重。
6、除非必要,一般应尽量少在接口部分声明变量,而改在实现部分声明。(5)过程或函数声明子句接口部分中声明的过程或函数仅包括例程头。,6.1.2 Unit程序单元,3.实现部分在单元中,实现部分以保留字implementation开始,直到初始化部分开始(如果初始化部分存在)或直到单元结束。在接口部分中声明的过程和函数(或类中的方法),都在实现部分中定义。在实现部分中,可以对这些过程和函数以任意的顺序定义和调用。此外,对这些在接口部分中声明的过程和函数,在实现部分中定义时可以省略参数列表。但如果在定义时要包括参数列表,则必需与接口部分中的声明严格匹配。,6.1.2 Unit程序单元,4.初始化和结束
7、部分初始化部分是可选的,它以保留字initialization开始一直到结束部分开始(如果单元中有结束部分)或单元结束(如果单元中没有结束部分)。初始化部分含有用于执行的语句,当程序开始执行时,将根据初始化部分出现的顺序依次执行其语句。例如,如果需要对某些数据结构进行初始化,那么可以将初始化语句置于初始化部分。,6.1.3 单元的引用,uses子句列出了程序、库或单元等所引用的单元。uses子句可以出现在:程序(program)或库(library)的项目文件中;单元的接口部分;单元的实现部分;本节讨论单元的引用,它们涉及如何处理程序单元之间的相关性。,6.1.3 单元的引用,1.单元的循环引
8、用单元的循环引用通常会发生有互相依赖关系的单元之间。相互依赖的单元是指在单元实现部分的uses子句中直接引用对方的单元。如果两个单元的接口部分都不互相依赖的话,编译器可以接收在实现部分中这两个单元的相互引用,否则编译器将产生循环单元引用的错误。,6.1.3 单元的引用,2.间接单元引用单元中的uses子句只需给出直接被本单元使用的单元名字。可是,常常一个单元是间接地依赖于另一个单元。为了编译一个单元,编译器必须能找到该单元直接或间接依赖的所有单元。当修改一个单元的接口部分时,必须重新编译所有使用该单元的其他单元,如果你执行CompileBuild All菜单命令,编译器将执行一些必要的更新操作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 章程 结构 设计
链接地址:https://www.31ppt.com/p-4879255.html