面向对象的基本概念优秀课件.ppt
《面向对象的基本概念优秀课件.ppt》由会员分享,可在线阅读,更多相关《面向对象的基本概念优秀课件.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象的基本概念第1页,本讲稿共50页目目的的要要求求:使使学学生生了了解解传传统统方方法法学学的的缺缺点点,掌掌握握面面向向对对象象的的基基本本概概念念,三三种种模模型型:对对象象模模型型、动动态态模模型型、功功能能模模型型的基本概念。的基本概念。教学重点教学重点:掌握面向对象的基本概念。掌握面向对象的基本概念。教学难点教学难点:三种模型:对象模型、动态模型的概念三种模型:对象模型、动态模型的概念。讲讲授授内内容容:认认识识传传统统方方法法学学的的缺缺点点,引引入入软软件件工工程程的的新新途途径径。面面向向对对象象的的基基本本概概念念,三三种种模模型型:对对象象模模型型、动态模型、功能模型
2、的基本概念。动态模型、功能模型的基本概念。教学目的、要求,重点、难点教学目的、要求,重点、难点第2页,本讲稿共50页第一节第一节 面向对象技术的基本概念面向对象技术的基本概念第3页,本讲稿共50页存在的问题存在的问题:1 1、生产率提高的幅度远不能满足需要、生产率提高的幅度远不能满足需要 2 2、软件重用程度很低、软件重用程度很低 3 3、软件仍然很难维护、软件仍然很难维护 4 4、软件往往不能真正满足用户需要、软件往往不能真正满足用户需要出现问题的原因出现问题的原因:(最根本的原因有两个最根本的原因有两个)1 1、僵化的瀑布模型、僵化的瀑布模型 1 1)某些类型的系统需求是模糊的)某些类型的
3、系统需求是模糊的 2 2)项目参与者之间存在通讯鸿沟)项目参与者之间存在通讯鸿沟 3 3)预先定义的需求可能是过时的)预先定义的需求可能是过时的2 2、结构化技术的缺点、结构化技术的缺点 1 1)系统结构不稳定;)系统结构不稳定;2 2)系统较难修改和扩充;)系统较难修改和扩充;3 3)软件的可重用性较差)软件的可重用性较差。一、传统方法学的缺点一、传统方法学的缺点第4页,本讲稿共50页1 1、区分两类不同的软件系统、区分两类不同的软件系统 一一类类系系统统的的需需求求比比较较稳稳定定,而而且且能能够够预预先先指指定定,称称为为预预先先指指定定的的系系统统;如如:计计算算机机控控制制系系统统,
4、卫卫星星图图象象处处理理系系统统,空空中中交交通通管管理理系系统统,火火箭箭发发射射跟跟踪踪控控制制系系统统;操作系统,编译系统,数据库管理系统等;操作系统,编译系统,数据库管理系统等;一一类类系系统统的的需需求求是是模模糊糊的的或或随随时时间间变变化化的的,通通常常在在系系统统安安装装运运行行之之后后,还还会会由由用用户户驱驱动动对对需需求求进进行行动动态态修修改改,称称为为用用户户驱驱动动系系统统;如如:商商业业或或行行政政数数据据处处理理系系统统,决策支持系统等。决策支持系统等。二、软件工程的新途径二、软件工程的新途径第5页,本讲稿共50页2 2、快速原型法简介、快速原型法简介快快速速原
5、原型型法法的的核核心心是是:用用交交互互的的快快速速建建立立起起来来的的原原型型取取代代了了形形式式的的、僵僵化化的的大大部部头头的的规规格格说说明明,用用户户通通过过在在计计算算机机上上运运行行和和试试用用原原形形系系统统而而向向开开发发者者提提供供真真实实的的反馈意见。反馈意见。原原型型法法的的基基本本思思想想是是:首首先先建建立立一一个个用用户户主主要要需需求求的的原原型型系系统统,让让用用户户在在计计算算机机上上运运行行、试试用用这这个个原原型型系系统统,通通过过实实践践、了了解解未未来来的的系系统统概概貌貌最最终终建建立立起起完完全全符符合合用用户户需需要要的的新新系系统统。瀑瀑布布
6、模模型型:用用户户和和分分析析员员反反复复讨讨论,论,“纸上谈兵纸上谈兵”;原型系统原型系统:用户在计算机上运行、试用,:用户在计算机上运行、试用,“真枪真枪实弹实弹”;“试用试用-反馈反馈-修改修改”的多次反复。的多次反复。第6页,本讲稿共50页3 3、用原型法开发软件的过程、用原型法开发软件的过程1 1)抛弃原型法)抛弃原型法目目的的:评评价价目目标标系系统统的的某某个个特特性性,以以便便更更准准确确的的确确定定需需求求,更更严严格格的的验验证证设设计计方方案案。使使用用完完后后将将原原型型系系统统抛抛弃弃掉掉,然后重建正式的目标系统。然后重建正式的目标系统。2 2)演化原型法)演化原型法
7、基基本本做做法法:经经过过初初步步调调研研和和分分析析获获知知用用户户的的基基本本需需求求之之后后,就就利利用用适适当当的的软软件件工工具具快快速速的的实实现现一一个个原原型型系系统统 ,作作为为沟沟通通各各方方的的基基础础和和用用户户实实践践的的场场所所,开开发发人人员员根根据据用用户户试试用用后后的的意意见见,对对原原型型进进行行修修改改和和扩扩充充,然然后后再再次次交交给给用用户户试试用用,并并根根据据试试用用后后提提出出的的意意见见,再再次次对对原原型型进进行行修修改改和和扩扩充充,经过多次迭代直到用户感到完全满意为止经过多次迭代直到用户感到完全满意为止。第7页,本讲稿共50页1 1、
8、面向对象方法简介、面向对象方法简介出发点和基本原则:尽可能模拟人类习惯的思维方式,出发点和基本原则:尽可能模拟人类习惯的思维方式,使开发软件的方法和过程尽可能接近人类认识世界解决问题使开发软件的方法和过程尽可能接近人类认识世界解决问题的方法和过程。即使描述问题的问题空间(问题域)与实现的方法和过程。即使描述问题的问题空间(问题域)与实现解法的解空间(求解域)在结构上尽可能一致。解法的解空间(求解域)在结构上尽可能一致。概括的说,概括的说,面向对象面向对象方法有下述方法有下述4 4个要点个要点:1 1)认认为为客客观观世世界界是是由由各各种种对对象象组组成成的的,任任何何事事物物都都是是对对象象
9、,复复杂杂的的对对象象可可以以由由比比较较简简单单的的对对象象以以某某种种方方式式组组合合而成。而成。第二节第二节 面向对象的基本概念面向对象的基本概念第8页,本讲稿共50页2 2)把把所所有有对对象象都都划划分分成成各各种种对对象象类类(类类CLASSCLASS),每每个对象类都定义了一组数据和一组方法。个对象类都定义了一组数据和一组方法。3 3)按按照照子子类类(派派生生类类)和和父父类类(基基类类)的的继继承承关关系系,把若干个对象类组成一个层次结构的系统(类等级)。把若干个对象类组成一个层次结构的系统(类等级)。4 4)对象彼此之间仅能通过)对象彼此之间仅能通过传递消息传递消息互相联系
10、。互相联系。OO=OOO=Objectsbjects+C+Classeslasses+I+Inheritancenheritance+C+Communicationommunication with with messagemessage面向对象面向对象=对象对象+类类+继承继承+传递消息传递消息 如果仅使用对象和消息的方法如果仅使用对象和消息的方法 -称为称为基于对象的方法基于对象的方法;如果进一步要求把所有端详划分为类如果进一步要求把所有端详划分为类-称为称为基于类的方法;基于类的方法;只有同时使用对象,类,继承,消息的方法只有同时使用对象,类,继承,消息的方法-真正面向对象的方法真正面向
11、对象的方法。第9页,本讲稿共50页1 1)与人类习惯的思维方式一致)与人类习惯的思维方式一致传传统统的的程程序序设设计计技技术术是是面面向向过过程程的的设设计计方方法法,以以算算法法为为核核心心,把把数数据据和和过过程程作作为为相相互互独独立立的的部部分分,数数据据代代表表问问题题空间中的客体,程序代码则用于处理这些数据。空间中的客体,程序代码则用于处理这些数据。把把数数据据和和代代码码作作为为分分离离的的实实体体,是是计计算算机机的的特特点点。但但总总存存在在“使使用用错错误误的的数数据据调调用用正正确确的的程程序序模模块块,或或使用正确的数据调用了错误的程序模块使用正确的数据调用了错误的程
12、序模块”的危险。的危险。传传统统的的程程序序设设计计技技术术忽忽略略了了数数据据和和操操作作之之间间的的内内在在联联系系,设设计计的的软软件件系系统统其其解解空空间间和和问问题题空空间间并并不不一致,难于理解。一致,难于理解。2 2 面向对象方法学的主要优点面向对象方法学的主要优点第10页,本讲稿共50页面向对象的软件技术以对象为核心,软件系统由面向对象的软件技术以对象为核心,软件系统由对象组成。对象是对现实世界实体的正确抽象,它由对象组成。对象是对现实世界实体的正确抽象,它由描述内部状态表示静态属性的数据,以及可以对这些描述内部状态表示静态属性的数据,以及可以对这些数据施加的操作(对象的动态
13、行为),封装在一起所数据施加的操作(对象的动态行为),封装在一起所构成的统一体。构成的统一体。面向对象的软件技术的基本原理,使用现实世界面向对象的软件技术的基本原理,使用现实世界的概念抽象地思考问题从而自然地解决问题。强调模拟的概念抽象地思考问题从而自然地解决问题。强调模拟现实世界中的概念而不强调算法,鼓励开发者在软件开现实世界中的概念而不强调算法,鼓励开发者在软件开发的绝大部分过程中都用应用领域的概念去思考。发的绝大部分过程中都用应用领域的概念去思考。第11页,本讲稿共50页传统的软件开发过程可以用传统的软件开发过程可以用“瀑布瀑布”模型来描述,模型来描述,强调强调“自顶向下自顶向下”按部就
14、班地完成软件开发工作。按部就班地完成软件开发工作。面向对象方法学的出发点和基本原则就是分析、面向对象方法学的出发点和基本原则就是分析、设计、实现一个软件系统的方法和过程,尽可能接近设计、实现一个软件系统的方法和过程,尽可能接近人们认识世界解决问题的方法和过程。也就是使描述人们认识世界解决问题的方法和过程。也就是使描述问题的问题空间和描述解法的解空间在结构上尽可能问题的问题空间和描述解法的解空间在结构上尽可能一致。一致。第12页,本讲稿共50页2 2)稳定性好;)稳定性好;传统的程序设计技术以算法为核心,开发过程基于功能传统的程序设计技术以算法为核心,开发过程基于功能分析和功能分解。分析和功能分
15、解。面向对象的软件技术以对象为核心,基于构造问题领域面向对象的软件技术以对象为核心,基于构造问题领域的对象模型。当系统的功能需求变化时并不会引起软件结构的的对象模型。当系统的功能需求变化时并不会引起软件结构的整体变化,仅需要做一些局部修改。整体变化,仅需要做一些局部修改。3 3)可重用性好;)可重用性好;用已有零部件装配新的产品是典型的重用技术。用已有零部件装配新的产品是典型的重用技术。传统方法学中内聚性好的模块独立性高,但数据传统方法学中内聚性好的模块独立性高,但数据和程序彼此独立,实际上重用性差。和程序彼此独立,实际上重用性差。面向对象的软件技术中的对象具有很强的自含性,面向对象的软件技术
16、中的对象具有很强的自含性,对象所固有的封装性和信息隐藏机理,使得对象的内部对象所固有的封装性和信息隐藏机理,使得对象的内部实现和外界隔离,具有较强的独立性。实现和外界隔离,具有较强的独立性。第13页,本讲稿共50页4 4)较易开发大型软件产品)较易开发大型软件产品开发大型软件系统时,开发人员的组织方法不当是出开发大型软件系统时,开发人员的组织方法不当是出现问题的主要原因。面向对象范型开发软件时,可以把一个现问题的主要原因。面向对象范型开发软件时,可以把一个大型软件产品看作一系列本质上相互独立的小产品来处理。大型软件产品看作一系列本质上相互独立的小产品来处理。一方面降低了技术难度,另一方面改善了
17、管理工作。一方面降低了技术难度,另一方面改善了管理工作。5 5)可维护性好)可维护性好;面向对象的软件稳定性好面向对象的软件稳定性好面向对象的软件比较容易修改面向对象的软件比较容易修改面向对象的软件比较容易理解面向对象的软件比较容易理解面向对象的软件易于测试和调试面向对象的软件易于测试和调试第14页,本讲稿共50页在在应应用用领领域域中中有有意意义义的的、与与所所要要解解决决的的问问题题有有关关系系的的任任何何事事物物都都可可以以作作为为对对象象,可可以以是是具具体体的的物物理理实实体体的的抽抽象象,也也可可是是人人为为的的概概念念,或或是是任任何何有有明明确确边边界界和和意意义义的的东东西西
18、。如如:一一名名职职工工,一一家家公公司司,一一个个窗窗口口,一一座座图书馆,一本图书,贷款和借款等。图书馆,一本图书,贷款和借款等。面面向向对对象象方方法法学学中中的的对对象象是是由由描描述述该该对对象象属属性性的的数数据据以以及及可可以以对对这这些些数数据据施施加加的的所所有有操操作作封封装装在在一一起起构构成成的的统统一一体体。对对象象可可以以做做的的操操作作表表示示对对象象的的动动态态行为,行为,OODOOD中称为对象的服务或方法。中称为对象的服务或方法。二、基本概念二、基本概念(一)(一)对象对象第15页,本讲稿共50页1 1、对象的形象表示、对象的形象表示 一一个个对对象象如如同同
19、一一台台录录音音机机,当当在在软软件件中中使使用用一一个个对对象象的的时时候候,只只能能通通过过对对象象与与外外界界的的界界面面来来操操作作它它。实实现现对对象象操操作作的的代代码码和和数数据据是是隐隐藏藏在在对对象象内内部部的的,一一个个对对象象好好象象是是一一个个黑盒子。黑盒子。使使用用对对象象时时只只需需知知道道它它向向外外界界提提供供的的接接口口形形式式而而无无须须知知道道内内部部的的具具体体算算法法,不不仅仅使使对对象象变变得得非非常常简简单单、方便,而且具有很高的安全性和可靠性。方便,而且具有很高的安全性和可靠性。操作操作1 1操作操作2 2操作操作3 3界界面面操作操作1 1、2
20、 2、3 3的实现的实现状态状态S S图4.1对象的形象表示对象的形象表示第16页,本讲稿共50页2 2、对象的定义、对象的定义 定义定义1 1 (从面向对象程序设计角度看待对象)对象是具有相同状态的一组操作的集合。对象是具有相同状态的一组操作的集合。定义定义2 2:(从信息模拟角度看待对象)对象是对问题域中某个东西的抽象,这种抽象反映对象是对问题域中某个东西的抽象,这种抽象反映了系统保存有关这个东西的信息或与它交互的能力。(对了系统保存有关这个东西的信息或与它交互的能力。(对象是对属性值和操作的封装)。象是对属性值和操作的封装)。定义定义3 3:(形式化的定义)对象对象:=ID-对象的标识或
21、名字对象的标识或名字MS-对象中的操作集合对象中的操作集合DS-对对象象的的数数据据结结构构MI-对对象象受受理理的的消消息息名名集集合合(对外接口)(对外接口)第17页,本讲稿共50页3 3、对象的特点、对象的特点1 1)以数据为中心)以数据为中心2 2)对象是主动的)对象是主动的3 3)实现了数据封装)实现了数据封装4 4)本质上具有并行性)本质上具有并行性5 5)模块独立性好)模块独立性好第18页,本讲稿共50页1 1、类(、类(C Classlass)类类是是对对具具有有相相同同数数据据和和相相同同操操作作的的一一组组相相似似对对象象的的定定义义,类类是是对对具具有有相相同同属属性性和
22、和行行为为的的一一个个或或多多个个对象的描述(抽象)。对象的描述(抽象)。例例如如:在在屏屏幕幕上上不不同同位位置置用用不不同同颜颜色色不不同同半半径径画画三三个个圆圆,是是三三个个不不同同的的对对象象,但但他他们们有有相相同同的的数数据据(圆圆心心坐坐标标,半半径径,颜颜色色)和和相相同同的的操操作作(显显示示自自己己,放放大大缩缩小小半半径径,在在屏屏幕幕上上移移动动位位置置等等),因因此此它它们们是是同同一一类类事事物物,可可用用“C Circleircle类类”来定义。来定义。(二)(二)其他概念其他概念第19页,本讲稿共50页2 2、实例(、实例(I Instancenstance)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 基本概念 优秀 课件
限制150内