预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共35页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

DesignPattern 面向对象技术基本概念 中科信软培训中心-www.info-soft.cn 课程目标 „建立复用的设计观念。 „提高面向对象的设计能力,而非纠缠语 言细节 „结合具体的实践和事例,而非高谈阔论 技术 „理解和熟练掌握部分典型常用的设计模 式 中科信软培训中心-www.info-soft.cn 面向对象发展简介 „面向对象技术作为一种软件编程方法在六十年代末期 随着软件编程的复杂程度越来越高而出现的。 „60年代末到70年代陆续出现了一些面向对象的编程语 言,比如SimulaandSmalltalk,也就第一次出现了一 个新的编程术语,Object-orientedProgramming. „但是在这个阶段OOA/D仍然是一个非正式的方法,不 被大多数软件行业人员接受和理解。直到1982年UML founder之一GradyBooch写了第一篇关于OOA/D的文 章,《Object-OrientedDesign》,OOA/D这个术语和 方法才开始被广泛关注,研究和使用。在此之后很多 的软件专家做很多创造性的工作和研究来推动OOA/D 技术的发展,包括KentBeck,IvarJacobson,Steve Mellor,BertrandMeyer,JimRumbaughetc.。 中科信软培训中心-www.info-soft.cn 重要的著作 „1988:Meyer出版了《Object-OrientedSoftwareConstruct》 „1988:MellorandSchlaer出版了《Object-OrientedSystems Analysis》,第一次提出Object-OrientedAnalysis. „1990:PeterCoad出版了《Object-OrientedAnalysisand Object-OrientedDesign》,创造了完整的OOA/D的方法。 „1991:Rumbaugh(UMLfounder)出版了《Object-Oriented ModelingandDesign,讲述了OMT方法。 „1992:GradyBooch(UMLfounder)出版了《Object-Oriented DesignwithApplications》,讲述了BOOCH方法。 „1992:Jacobson(UMLfounder)出版了《Object-Oriented SoftwareEngineering》不仅大大推动了OOA/D的发展,而且提 出了用Usecase来表达软件需求的方法。 中科信软培训中心-www.info-soft.cn OOandProgramminglanguage Smalltalk第一次将OO引入到实际的编程中 面向对象的方法到了90年代中期才真正成为业界主流的占主导地位的软 件设计和实现的方法,这个转变也是得益于C++语言的发展和广泛使 用,以及GUI的广泛使用。 C++之父:Bjarne.Stroustrup,比雅尼·斯特劳斯特鲁普 C++使得OO被广泛的接受和使用,可以说C++是最重要的OO编程语 言。直到C++成为主流之后,OO才成为主流。 C++是从C语言发展而来,C/C++usethesamecompiler。 虽然最近10年有很多powerful的OO编程语言出现,但是C++依然在业 界是主流,无论是运行中的系统还是开发中的系统,决大部分还都是用 C++/C写的。C++的发烧友认为目前90%以上的软件系统都C++写的。 同时C++语言相比其他OO语言也是最复杂的语言。由于OO技术被广泛 使用,很多以前面向过程的编程语言也纷纷开始支持OO,将OO的特性加 入到这些语言中。比如,Ada,BASIC,Fortran,Pascal. 新的OO语言,VB.net,C#,Java.都是比较纯粹的OO编程语言。 中科信软培训中心-www.info-soft.cn 什么是面向对象 „面向对象(OO)=对象(Objects)+ 类(Classes)+ 继承(Inheritance)+ 多态性(Polymorphism)+ 消息通信(CommunicationWith Messages) 中科信软培训中心-www.info-soft.cn 面向对象技术的基本观点 ①客观世界由对象组成,任何客观实体都是对 象,复杂对象可以由简单对象组成。 ②具有相同数据和操作的对象可归纳成类,对象 是类的一个实例。 ③类可以派生出子类,子类除了继承父类的全部 特性外还可以有自己的特性。 ④对象之间的联系通过消息传递来实现。 ⑤支持多态性 中科信软培训中心-www.info-soft.cn 面向对象的核心元素 ①封装