软考--软件设计师(软件工程总结3)

目录

1.面向对象技术

2。面向对象分析

3.面向对象程序设计(选用一种面向对象的程序语言)

4.面向对象测试

5.UML

​编辑6.UML的图

​编辑7.设计模式


1.面向对象技术

面向对象=对象+继承+类+消息通信

对象:是基本运行时的实体,包括数据(属性),数据的操作。一个对象一般由对象名,属性,方法组成。

消息:对象间的通信靠消息传递。

类:类是创建对象的模板,是对对象的抽象。

继承:是父类与子类之间共享数据和方法的机制。是类之间的一种关系。

多态:不同对象收到同一消息可以产生不同的行为结果,这种现象是多态。在面向对象设计中,多态性是通过继承和方法来实现的。

参数多态是应用比较广泛的多态,被称为最纯的多态。

包含多态在许多语言中都存在,最 常见的例子就是子类型化,即一个类型是另一个类型的子类型。

过载(Overloading)多态是同 一个名字在不同的上下文中所代表的含义不同。

动态绑定:动态绑定是和类的继承以及多态相联系的。在继承关系中,子类是父类的一个特例,所以 父类对象可以出现的地方,子类对象也可以出现。因此在运行过程中,当一个对象发送消息请 求服务时,要根据接收对象的具体情况将请求的操作与实现的方法进行连接,即动态绑定

2。面向对象分析

面向对象设计是将面向对象分析模型转化为设计模型,其目的是定义系统构造蓝图。

面向对象设计同样应遵循抽象,信息屏蔽,功能独立,模块化等设计准则。

面向对象设计原则:

3.面向对象程序设计(选用一种面向对象的程序语言)

1.类

类具有实例化功能,包括实例生成(由类的Constructor完成)和实例消除(由类的Destructor 完成)。类的实例化功能决定了类及其实例具有下面的特征。

(1)同一个类的不同实例具有相同的数据结构,承受的是同一方法集合所定义的操作,因 而具有规律相同的行为。

(2)同一个类的不同实例可以持有不同的值,因而可以具有不同的状态。

(3)实例的初始状态(初值)可以在实例化时确定

2.继承和类层次结构

在一个面向对象系统中,子类与父类之间的继承关系构成了这个系统的类层次结构,可以 用树(对应于单继承)或格(对应于多继承)这样的图来描述。

4.面向对象测试

5.UML

UML的词汇表包含3种构造块:事物、关系和图。事物是对模型中最具有代表性的成分 的抽象;关系把事物结合在一起;图聚集了相关的事物.

UML中有4种事物:结构事物、行为事物、分组事物和注释事物。

6.UML的图

UML 2.0提供了13种图,分别是类图、对象图、用例图、序列图、通信图、状态图、活 动图、构件图、组合结构图、部署图、包图、交互概览图和计时图。序列图、通信图、交互概 览图和计时图均被称为交互图

1.类图

类图(Class Diagram)展现了一组对象、接口、协作和它们之间的关系(依赖,泛化,关联)。在面向对象系统 的建模中所建立的最常见的图就是类图。类图给出系统的静态设计视图。

2.对象图

对象图(Object Diagram)展现了某一时刻一组对象以及它们之间的关系,描述了在类图 中所建立的事物的实例的静态快照。对象图一般包括对象和链

3.用例图

用例图(Use Case Diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。 用例图通常包括以下内容。

(1)用例。

(2)参与者。

(3)用例之间的扩展关系(>)和包含关系(>),参与者和用例之间 的关联关系,用例与用例以及参与者与参与者之间的泛化关系

4.顺序图

5.活动图

6.状态图

7.设计模式

设计模式的核心在于提供了相关问题的解决方案。

设计模式的四个基本要素:模式名称,问题,解决方案,效果。

1.创建型设计模型

2.结构型设计模型

3.行为型设计模型

三个模型简单记忆

相关推荐
33三 三like2 小时前
软件工程笔记下
软件工程
@杨星辰5 小时前
软件工程与实践(第4版 新形态) 练习与实践1
软件工程
Dragonlongbo5 小时前
软件工程---构件
软件工程
33三 三like5 小时前
软件工程画图题
java·开发语言·软件工程
coffeewoo8 小时前
004-用DeepSeek搞定复杂的需求分析和设计
人工智能·微服务·软件工程·需求分析·ai编程·规格说明书
Python数据分析与机器学习1 天前
《基于锂离子电池放电时间常数的自动化电量评估系统设计》k开题报告
运维·性能优化·自动化·软件工程·软件构建·个人开发
思茂信息1 天前
CST直角反射器 --- 距离多普勒(RD图), 毫米波汽车雷达ADAS
前端·人工智能·5g·汽车·无人机·软件工程
IDRSolutions_CN3 天前
PDF 文件中的文本链接是如何定义的?
java·经验分享·pdf·软件工程·团队开发
Inori_3334 天前
山东大学计算机科学与技术学院软件工程实验日志
软件工程
开开心心就好5 天前
高效玩转 PDF:实用的分割、合并操作详解
android·java·网络·windows·智能手机·pdf·软件工程