oop技术:面向对象技术概述

oop技术:面向对象技术概述

ID:33966809

大小:301.00 KB

页数:11页

时间:2019-03-02

oop技术:面向对象技术概述_第1页
oop技术:面向对象技术概述_第2页
oop技术:面向对象技术概述_第3页
oop技术:面向对象技术概述_第4页
oop技术:面向对象技术概述_第5页
资源描述:

《oop技术:面向对象技术概述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、11第1章面向对象技术概述OOP技术:面向对象技术概述本章综述面对各种亟待解决的问题,人们都要有解决的步骤和方法。如何把这些步骤和方法准确无误地告诉给计算机,并且让计算机帮助人们来解决问题,这是程序设计的任务。人与计算机之间通过计算机程序设计语言进行交互。计算机程序设计语言经历了侧重计算机理解逐步过渡到面向人们理解的发展过程,Java语言是一种成熟的、面向对象的、更符合人们思考习惯的计算机编程语言。本章从面向对象技术的发展历史入手,引导读者分析客观世界的问题域中的对象,从而理解面向对象程序设计的基本思想和基本概念,理解面向对象的程序设计与结构化程序设计的

2、不同,了解常用面向对象编程语言以及通用建模语言(UML)描述。本章的重点内容包括:·面向对象的基本概念;·面向对象技术的基本特征;·面向对象程序设计方法;·面向对象的UML描述。1.1面向对象技术的发展面向对象技术源于面向对象的编程语言(objectorientedprogramminglanguage,OOPL)。从20世纪60年代提出面向对象的概念到现在,它已发展成为一种比较成熟的编程思想,并且逐步成为目前软件开发领域的主流技术。面向对象并非是一个新的概念,寻其根源可以追溯到20世纪60年代的挪威,当时挪威计算中心的KristenNygaard和Ol

3、e-JohanDahl开发了一种称作Simula67的仿真语言,该语言中引入了类的概念和继承机制,后来一些著名的面向对象编程语言都受到Simula的启发,如Smalltalk、C++、Eiffel。在20世纪70年代中期,AlanKay在施乐公司设计开发了Smalltalk语言,它具备了面向对象语言的继承和封装的主要特征,使面向对象程序设计方法趋于完善,掀起了面向对象研究的高潮。该语言的每个元素都被作为一个对象来实现。Smalltalk的程序设计环境及其相关的各方面都是面向对象的。即使今天,Smalltalk仍被认为是最纯的面向对象语言。Simula67

4、和Smalltalk的开发为今天的面向对象研究开发工作奠定了基础。从20世纪80年代中期到90年代,大批比较实用的面向对象编程语言涌现出来,如C++、Objective-C、ObjectPascal等。面向对象编程语言的繁荣是面向对象技术走向实用的重要标志,也是面向对象技术在计算机学术界、产业界和教育界日益受到重视的结果。在C++语言十分热门的时候,人们开始了对面向对象分析(objectorientedana11第1章面向对象技术概述lysis,OOA)的研究,进而延伸到面向对象设计(objectorienteddesign,OOD)。特别是20世纪90

5、年代以后,许多专家都在尝试用不同的方法进行面向对象的分析与设计,在这段时期,面向对象的分析和设计技术逐渐走向实用,最终形成了从分析、设计到编程、测试与维护一整套的软件工程体系。当前,面向对象的概念已经渗透到编程语言、用户接口、人工智能和数据库等方面。1.2面向对象方法与结构化方法的比较为了更好地理解面向对象方法与结构化方法的不同,下面通过对一个实例的分析来认识这个问题。1.2.1现实问题分析【例1-1】某校需要设计图书管理系统,要求该系统具有借阅、归还、预订、查询等基本功能,其功能要求如下:(1)借阅:图书管理员输入读者借书证号码,系统首先检查借书证是否

6、有效,若有效,则检查该读者所借图书或杂志是否超过10本,若已达到10本,则拒借;若未达到10本,则办理借书手续,修改图书库存目录并将读者借书情况保存到借书文件。(2)归还:图书管理员通过系统从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)作罚款处理。否则,修改相应图书库存目录与借书文件。(3)预定:借书者可以预定目前借不到的书或杂志,一旦预定的书被其他人返还,就通知预定者。(4)查询:通过借书文件、图书库存目录文件查询读者情况﹑图书借阅及库存情况,打印统计表。分析:按照结构化方法的思路,采用“自顶向下、逐步求精”的方法,可以把问题描述中的

7、系统分解为一系列的模块,如图1-1所示。结构化方法强调功能抽象与模块化,因而结构化方法把问题看作一系列处理的过程,也就是以模块(即过程)为中心的开发方法。图1-1“图书管理系统”结构化方法的功能图11第1章面向对象技术概述然后对每个模块再按相同的方法进行分解,例如还书处理模块可进一步分解为下面的子模块,如图1-2所示。借书处理模块也可以进一步分解为相应子模块,如图1-3所示。图1-2“还书处理”模块图1-3“借书处理”模块按照面向对象方法来分析本系统则不是从功能入手,而是从对象入手。待解决的问题所涉及的业务范围称为该软件的问题域(problemdomai

8、n)。面向对象方法从问题域中的事物出发,围绕问题域中的事物来思考问题、认识问题,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。