0%

设计思想

[toc]

OOA#

Object-Oriented Analysis:面向对象分析法
指的是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。

  • OOA方法的具体步骤
    在用OOA具体分析一个事物时。大致上遵循如下5个基本步骤;
  1. 确定对象和类。这里所说的对象是对数据及其处理方式的抽象,它反映了系统保存和处理现实世界总某些事物的信息能力。。类是多个对象的共同属性和方法集合的描述,它包括如何在一个类中建立一个新对象的描述。
  2. 确定结构(structure)。结构是指问题域的复杂性和连接关系。类成员结构反映了泛华—特化关系,整体-部分结构反映整体和局部之间的关系
  3. 确定主题(subject)。主题是指事物的总体概貌和总体分析模型
  4. 确定属性(attribute)。属性就是数据元素,可用来描述对象或分类结构的实例,可在图中给出,并在对象的存储中指定。
  5. 确定方法(method)。方法是在收到消息后必须进行的一些处理方法:方法要在图中定义,并在对象的存储中指定。对于每个对象和结构来说,那些用来增加、修改、删除和选择一个方法本身都是隐含的(虽然它们是要在对象的存储中定义的,但并不在图上给出),而有些则是显示的。

OOD#

面向对象设计(Object-oriented Design,OOD)方法是oo方法中一个中间过渡环节。其主要作用是对OOA分析的结构作进一步的规范化整理,以便能够被oop直接接受。

OOD就是“根据需求决定所需的类、类的操作以及类之间关联的过程”。

使用OOD这种设计范式,我们可以用对象(object)来表现问题领域(problem domain)的实体,每个对象都有相应的状态和行为


Q: OO面向对象(Object-Oriented)和PO面向过程(process oriented)的区别?#

A:

  • 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
  • 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为

OOP#

所谓的OOP就是指的面向对象编程
OOP的一条基本准则是计算机程序是由单个能够引起子程序作用的单元或对象组合而成.OOP达到了软件工程的三个主要目标:重用性,灵活性和扩展性.为了实现整体运算,每个对象都能够接收消息,处理数据和向其它对象发送消息.OOP主要有以下的概念和组件.

DDD#

https://blog.csdn.net/h295928126/article/details/122951726

DDD(domain driver designer,也就是领域驱动设计),它有三个关键词:领域,驱动,设计。领域,是要探索业务的边界;驱动,表示前者是后者的决定性因素;设计,包括产品设计,UIUE设计,软件设计。它不仅仅是开发架构的方案,而是完整的解决方案实施思路。正是因为它是完整的方案,才能让领域专家,产品和研发真正在同一个角度去思考和沟通,避免推诿扯皮,含糊不清。
从上文就可以知道DDD是一种拆解业务、划分业务、确定业务边界的方法, 是一种高度复杂的领域设计思想,将我们的问题拆分成一个个的域, 试图分离技术实现的复杂性,主要解决的是软件难以理解难以演进的问题,DDD不是一种架构, 而是一种架构方法论, 目的就是将复杂问题领域简单化, 帮助我们设计出清晰的领域和边界, 可以很好的实现技术架构的演进。下面为常用的的设计架构图

在这里插入图片描述