您的当前位置:首页课程设计报告

课程设计报告

2021-04-13 来源:飒榕旅游知识分享网

  随着计算机科学的发展、应用领域的不断扩大,对计算机技术本身的要求越来越高。现在越来越多的软件开发过程采用了面向对象的开发技术,面向对象的研究遍及计算机软硬件的各个领域,如面向对象的程序设计语言、面向对象的程序设计方法、面向对象的设计、面向对象的分析、面向对象的操作系统、面向对象的DBMS、面向对象的开发工具、面向对象的开发环境等。目前不仅在研究领域已取得了丰硕的成果,而且有些软件产品已经投放市场。面向对象技术是一种新的设计技术,与传统的面向过程技术相比,它试图依据人们对问题的看法来解释软件的架构,并力求将问题域中的问题映像到分析模型中,再转换成对应的程序代码。面向对象技术倡导一种新的认知和表示世界的思想,计算机专业人士利用它提出了面向对象的计算机程序设计语言、面向对象的软件设计方法、面向对象的数据库等,使面向对象技术在今天的应用设计中得到了最广泛的运用。

  一、面向对象的有关基本概念

  面向对象技术为软件开发提供了一种新的方法学,引入了许多新的概念,这些概念是理解和使用面向对象技术的基础和关键。

  (一)对象(Object)、方法(Method)及消息(Message)

  客观世界的问题都是由客观世界中的实体及其相互之间的关系构成的。我们将客观世界中的实体抽象为问题空间中的对象。由于我们需要解决的问题不同,我们面向的对象也就不同,因此对象是不固定的。一本书可以是一个对象,一家图书馆也可以是一个对象。从动态的观点看,对象及其操作就是对象的行为,一个对象的通常定义是:对象是对一组信息及其上面的操作的描述。

  私有数据结构和处理,这些处理又称为操作(Operation)或方法(Method),包括控制和过程。其中私有数据表示了对象的状态,该状态只能由私有操作来改变,每当需要改变对象的状态时,只能由其它对象向该对象发送消息。

  消息是用来请求对象执行某一操作或回答某些信息的要求,消息统一了数据流和控制流,程序的执行是靠在对象间传递消息来完成的。表示消息的形式是消息模式。对同一消息模式的不同消息,同一对象所作的解释和处理都相同,但是会由于对象状态的不同而导致操作结果不同。一个消息模式定义对象的一种处理能力,所有消息模式及相应于消息模式的处理能力,定义了对象的外部特征。

  (二)类(Class)、实例(Instance)、继承性(Inheritance)

  在客观世界中,有许多具有相同特征的事物,如:小轿车、大客车、卡车等,可以归类为机动车。从对象观点看,具有共同的属性、共同的操作性质的对象的集合就是类,而单个对象则是对应类的一个实例。例如:书是一个类,而某一本具体的书如《面向对象的分析》则是该类的一个实例,任何一个对象都是某一个类的实例,并继承该类定义的私有数据和操作。这就是继承性,一个类实质上定义的是一种对象类型。

  类构成层次结构,相对上层的是超类,相对下层是子类,子类在继承超类的私有数据结构及操作的同时可以拥有自有的私有数据结构及操作。如果一个子类只有一个超类,则称为单继承性,这时该类共享多个超类的属性及操作。

  类和继承性是现代软件工程中的重要概念,软件的可重用性、程序成分的可重用性是通过继承类中的.属性和操作而实现的。许多工业观察有相信可重用软件不是通过建立传统的过程序(子程序库),而是通过建立“类库”实现的。

  (三)封装性(Encapsulation)

  对象的封装性是面向对象技术的一个重要特征。对象本身的定义即提供了封装性。对象的封装性是一种信息隐蔽技术,对象的使用者只能看到对象封装界面上的信息,对象的内部对使用者是隐蔽的,其目的在于将对象的使用者和设计者分开。对象的封装性体现在以下几个方面:

  对象具有清楚的边界:对象的内部软件(数据结构及操作)的范围,限定在这个边界之内;对象具有统一的外部接口;对象的接口(消息模式)描述该对象与其他对象间的相互作用;对象的内部实现是不公开的;对象的实现给出了对象提供的功能细节,外部对象是不能访问这个功能细节的。

  信息隐蔽是软件开发过程中强调的一个重要概念,对象的封装性很好地体现了这一概念。这就便利得用面向对象技术所开发设计的软件的可维护性大为改善,这也是软件技术追求的目标之一。

  二、面向对象技术的基本思想

  面向对象的方法是一种分析方法、设计方法和思维方法。计算机系统通常是在指定的对象上执行特定的行为操作,要获得符合用户需求的灵活而且可重用的系统,最好的办法就是把软件结构建立在对象之上,而不是行为之上,使计算机求解问题更加类似于人类的活动。因此,概括面向对象方法的基本思想为:从客观存在的对象出发来构造软件系统,并在系

  统构造中尽可能运用人类的自然思维方式。面向对象技术是从问题域中客观存在的事物出发来构造软件系统,用对象作为这些事物的抽象表示,并成为系统的基本构成单位。每个对象都有其属性和服务,对象的属性和服务融为一体,对外屏蔽其内部细节,称作封装,把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述,每个对象是该类的一个实例,通过在不同程度上运用抽象原则,得到较一般的类和较特殊的类,特殊类继承一般类的属性和服务,复杂的对象用简单的对象构成,称作聚合。对象之间的消息通信表达对象之间的动态联系,对象之间的关联表达对象之间的静态关系。

  随着科学技术不断进步和经济不断发展,面向对象技术在当今软件开发中的运用越来越广泛,面向对象技术中使用UML语言对于数据库系统的设计具有非常重要的作用。运用UML语言能详细描述数据库系统的外部功能结构、内部静态结构、动态结构以及程序代码的物理结构,采用面向对象的成熟技术提高了数据库系统设计的效率和质量,提高了数据库系统软件开发的可重用性和可维护性。

因篇幅问题不能全部显示,请点此查看更多更全内容