第一章程序设计语言发展简史.doc

上传人:鲁** 文档编号:559835304 上传时间:2023-12-20 格式:DOC 页数:55 大小:1.08MB
返回 下载 相关 举报
第一章程序设计语言发展简史.doc_第1页
第1页 / 共55页
第一章程序设计语言发展简史.doc_第2页
第2页 / 共55页
第一章程序设计语言发展简史.doc_第3页
第3页 / 共55页
第一章程序设计语言发展简史.doc_第4页
第4页 / 共55页
第一章程序设计语言发展简史.doc_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《第一章程序设计语言发展简史.doc》由会员分享,可在线阅读,更多相关《第一章程序设计语言发展简史.doc(55页珍藏版)》请在金锄头文库上搜索。

1、贵州民族学院本科毕业论文(设计)开题报告题目:C+设计模式及其应用学 院计算机与信息工程学院 专 业 电子信息科学与技术 班 级 2006级 姓 名 刘定发 学 号 200612030030 指导教师 蔡 立 填表日期 蔡 立 作者:刘定发(计算机与信息工程学院06级电子信息科学与技术专业) 指导老师:蔡立C+设计模式及应用刘定发摘要:C+的设计模式是一个被很多人讨论过的话题,其实我们不用把模式看的很神秘,所谓的模式就是我们思考问题的一种方法,一些达人为了后人的方便,而将一些相类似问题的解决方法抽象出来了,从而形成一种模式。其实,每个程序员在编程过程中都会自觉或不自觉的用到某些模式,所以大家不

2、要刻意的去仿照某种模式,在你对编程有了一定的领悟后,模式就会不请自来的出现在你的脑海里。C+的常用模式有:简单工厂模式(Simple Factory Pattern)、工厂方法模式(Factory Method Pattern)、抽象工厂模式(Abstract Factory)、单件模式(Single Pattern)等。 关键词:程序设计、C+、设计模式、UML。C + + design patterns and applicationLiuDingFaAbstract: C + + is a design model by many people have discussed topics

3、, actually we dont see the pattern of the mysterious, so-called pattern is a way of thinking for posterity, some da, and some of the convenience of similar problem solving method was abstracted, thus forming a kind of mode. Actually, each programmer in the programming process will consciously or not

4、 to use certain mode, so you dont painstakingly took a pattern of programming, you have understanding, pattern will not invited appeared in your mind. C+ is the common mode: Simple Factory Pattern、Factory Method Pattern、Abstract Factory)、Single Pattern and so on.Keywords:Programming、C+、common mode、U

5、ML、realizing.目 录目 录ii第一章 前 言1第二章 程序设计语言发展简史22.1. 结构化程序设计:22.2. 面向对象程序设计:2第三章 C+语言特性43.1.类53.2 继承63.3.多态7第四章 统一建模语言UML94.1 UML简介94.2 UML的内容10第五章 C+中类与对象及其关系135.1、关联(Association)135.1.1 单向关联135.1.2双向关联145.1.3 自身关联155.1.4、多维关联(N-ary Association)155.2 泛化(Generalization)165.3 依赖(Dependency)175.4聚合(Aggreg

6、ation)175.5组合(Composite)18第六章 C+设计常用设计模式186.1 Factory模式186.1.1功能:186.1.2 UML结构图:186.1.3 抽象基类186.1.4 解析196.1.5示例代码:196.2 Abstract Factory模式226.2.1功能226.2.2UML结构图226.2.3优缺点226.2.4实现236.2.5示例代码236.2.6实例246.3 Composite模式256.3.1功能256.3.2 UML结构图256.3.3 优缺点256.3.4 实现266.3.5示例代码286.3.6实例296.4 Proxy 模式306.4.

7、1功能306.4.2 UML结构306.4.4要点316.4.5实现326.5 Singleton模式356.5.1功能356.5.2 UML结构图356.5.3优缺点356.5.4实现356.5.5示例代码36第七章 设计模式在软件开发过程中的使用分区LED显示屏取模软件397.1 软件概述397.2 开发目标407.3 软件详细功能407.4 设计模式在该软件中的使用407.4.1单例模式407.4.2工厂模式427.4.3 文档视图模型447.5、软件设计457.5.1开发环境45第八章 总结47参考文献49致谢50原 创 性 声 明1关于学位论文使用授权的声明147作者:刘定发(计算机

8、与信息工程学院06级电子信息科学与技术专业) 指导老师:蔡立第一章 前 言在1966年,Dahl 和Nygaard 发表了关于在Simula中提出类(Class)和子类(SubClass)的概念,这些概念后来被应用到Simula 67中。1967年6月的一个会议上,Dahl建议对Type和Class概念进行明确定义,这引发了一次认真严谨的讨论,为语言的标准化奠定了基础;Simlua是第一个实现的面向对象语言,但并不是第一个完整实现的。Smalltalk虽然并没有被广泛使用,但它对面向对象技术的推广起了非常大的作用。C+诞生于1979年Bells实验室,是第一个被广泛使用的面向对象语言。C+是一

9、个从C语言演化过来的支持面向对象编程的程序语言。随着C+等面向对象程序语言的发展,开发人员在开发过程中不断总结了各种经验,最终渐渐形成了一套理论性的开发框架,这就是设计模式。由于设计模式是一个经验累积型的概念,因此没有能够在实际教学过程中得到好的应用;相反需要的开发人员长时间的开发经验才能够接触或领会。设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 设计模式的产生主要是由开发者在开发过程中不断总结、归纳形成的一个可重用的代码框架或者是设计思想。想对而言,这些关于单个设计模式的论述显得比较零散,又因为各种程序设计语言的差异,导致部分设

10、计模式在C+中的应用显得比较牵强或者不够灵活1。再者,目前大部分学员对C+或其他面向对象语言的学习还停留在语言特性的基础上,几乎没有从面向对象的角度去思考、没有使用面向对象的方法来处理面向对象程序设计中遇到的问题,而改变这一传统学习方式的方法就是在学习面向对象语言的时候引入面向对象设计模式。第二章 程序设计语言发展简史2.1. 结构化程序设计:结构化程序设计由迪克斯特拉(E.W.dijkstra)在1969年提出,是以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,这样使完成每一个模块的工作变单纯而明确,为设计一些较大的软件打下了良好的基础。 由于模块相互独立,因此在设计其中一

11、个模块时,不会受到其它模块的牵连,因而可将原来较为复杂的问题化简为一系列简单模块的设计。模块的独立性还为扩充已有的系统、建立新系统带来了不少的方便,因为我们可以充分利用现有的模块作积木式的扩展。 按照结构化程序设计的观点,任何算法功能都可以通过由程序模块组成的三种基本程序结构的组合: 顺序结构、选择结构和循环结构来实现。 结构化程序设计的基本思想是采用自顶向下,逐步求精的程序设计方法和单入口单出口的控制结构。自顶向下、逐步求精的程序设计方法从问题本身开始,经过逐步细化,将解决问题的步骤分解为由基本程序结构模块组成的结构化程序框图;单入口单出口的思想认为一个复杂的程序,如果它仅是由顺序、选择和循

12、环三种基本程序结构通过组合、嵌套构成,那么这个新构造的程序一定是一个单入口单出口的程序。据此就很容易编写出结构良好、易于调试的程序来。2.2. 面向对象程序设计:面向对象程序设计中的概念主要包括:对象、类、数据抽象、继承、动态绑定、数据封装、多态性、消息传递。通过这些概念面向对象的思想得到了具体的体现。面向对象出现以前,结构化程序设计是程序设计的主流,结构化程序设计又称为面向过程的程序设计。在面向过程程序设计中,问题被看作一系列需要完成的任务,函数(在此泛指例程、函数、过程)用于完成这些任务,解决问题的焦点集中于函数。其中函数是面向过程的,即它关注如何根据规定的条件完成指定的任务。一个语言要称

13、为面向对象语言必须支持几个主要面向对象的概念。根据支持程度的不同,通常所说的面向对象语言可以分成两类:基于对象的语言,面向对象的语言。基于对象的语言仅支持类和对象,而面向对象的语言支持的概念包括:类与对象、继承、多态。举例来说,Ada就是一个典型的基于对象的语言,因为它不支持继承、多态,此外其他基于对象的语言还有Alphard、CLU、Euclid、Modula。面向对象的语言中一部分是新发明的语言,如Smalltalk、Java,这些语言本身往往吸取了其他语言的精华,而又尽量剔除他们的不足,因此面向对象的特征特别明显,充满了蓬勃的生机;另外一些则是对现有的语言进行改造,增加面向对象的特征演化

14、而来的。如由Pascal发展而来的Object Pascal,由C发展而来的Objective-C,C+,由Ada发展而来的Ada 95等,这些语言保留着对原有语言的兼容,并不是纯粹的面向对象语言,但由于其前身往往是有一定影响的语言,因此这些语言依然宝刀不老,在程序设计语言中占有十分重要的地位2。面向对象程序设计的优点:面向对象出现以前,结构化程序设计是程序设计的主流,结构化程序设计又称为面向过程的程序设计。在面向过程程序设计中,问题被看作一系列需要完成的任务,函数(在此泛指例程、函数、过程)用于完成这些任务,解决问题的焦点集中于函数。其中函数是面向过程的,即它关注如何根据规定的条件完成指定的

15、任务。在多函数程序中,许多重要的数据被放置在全局数据区,这样它们可以被所有的函数访问。每个函数都可以具有它们自己的局部数据。下图显示了一个面向过程程序中函数和数据的关系面向对象的主要特征有:封装性、继承性、多态性在面对对象方法中,对象和传递消息分别表现事物及事物间相互联系的概念。类和继承是是适应人们一般思维方式的描述范式。方法是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性和类的继承性。通过封装能将对象的定义和对象的实现分开,通过继承能体现类与类之间的关系,以及由此带来的动态联编和实体的多态性,从而构成了面向对象的基本特征。面向对象设计是一种把面向对象的思想应用于软件开

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号