📜  OOAD-面向对象范例

📅  最后修改于: 2020-12-14 04:05:48             🧑  作者: Mango


一个简短的历史

面向对象的范式是从一种新的编程方法的最初概念开始形成的,而对设计和分析方法的兴趣就在后来。

  • 第一种面向对象的语言是Simula(对真实系统的仿真),它是由挪威计算中心的研究人员于1960年开发的。

  • 1970年,艾伦·凯(Alan Kay)和他在施乐帕克(Xerox PARK)的研究小组创造了一台名为Dynabook的个人计算机,以及第一台用于面向Dynabook进行编程的纯面向对象编程语言(OOPL)-Smalltalk。

  • 在1980年代,Grady Booch发表了一篇名为《面向对象设计》的论文,该论文主要介绍了编程语言Ada的设计。在随后的版本中,他将其思想扩展到了一种完整的面向对象的设计方法。

  • 在1990年代,Coad将行为思想整合到面向对象的方法中。

其他重要的创新是James Rumbaugh的对象建模技术(OMT)和Ivar Jacobson的面向对象软件工程(OOSE)。

面向对象的分析

面向对象分析(OOA)是根据软件系统的对象模型(包括交互对象)识别软件工程需求并制定软件规格的过程。

面向对象的分析与其他形式的分析之间的主要区别在于,在面向对象的方法中,需求是围绕对象组织的,这些对象集成了数据和功能。它们是根据与系统交互的实际对象建模的。在传统的分析方法中,功能和数据这两个方面是分开考虑的。

Grady Booch将OOA定义为“面向对象分析是一种从问题域词汇表中发现的类和对象的角度检查需求的分析方法”

面向对象分析(OOA)的主要任务是-

  • 识别物体
  • 通过创建对象模型图来组织对象
  • 定义对象的内部或对象属性
  • 定义对象的行为,即对象动作
  • 描述对象如何相互作用

OOA中使用的常见模型是用例和对象模型。

面向对象设计

面向对象设计(OOD)涉及实施在面向对象分析过程中产生的概念模型。在OOD中,分析模型中与技术无关的概念被映射到实现类上,识别约束并设计接口,从而形成用于解决方案领域的模型,即,系统的详细描述。建立在具体技术上。

实施细节通常包括-

  • 重组课程数据(如有必要),
  • 方法的实现,即内部数据结构和算法,
  • 实施控制,以及
  • 实施关联。

Grady Booch将面向对象的设计定义为“一种包含面向对象分解过程的设计方法,以及一种表示正在设计的系统的逻辑和物理以及静态和动态模型的符号”

面向对象的程序设计

面向对象编程(OOP)是一种基于对象(具有数据和方法)的编程范例,旨在融合模块化和可重用性的优点。对象通常是类的实例,用于彼此交互以设计应用程序和计算机程序。

面向对象编程的重要特征是-

  • 程序设计中的自下而上的方法
  • 围绕对象组织的程序,按类分组
  • 通过处理对象数据的方法专注于数据
  • 通过功能对象之间的交互
  • 通过向现有类添加功能来创建新类来重用设计

面向对象的编程语言的一些示例是C++,Java,Smalltalk,Delphi,C#,Perl, Python,Ruby和PHP。

Grady Booch将面向对象的编程定义为“一种实现方法,其中程序被组织为对象的协作集合,每个对象代表某个类的实例,并且其类都是通过继承关系联合在一起的类层次结构的成员”