软考-面向对象设计

UML

包图类的一个集合,是类打包的结果。

用例图:

include 包含,例如 登录后可以修改信息,则修改信息指向登录。








依赖关系,一个类的变化会引起另一个类变化。

类图 类名下没有下划线,对象图有下划线。

交互图

  顺序图或者协作图

顺序图又称序列图。



协作图用于描述相互合作的对象间的交互关系和链接关系。


状态图:用来描述对象状态和事件之间的一种关系。

状态图用于描述一个单项对象的行为。

只有具有重要交互行为的类才具有状态图。


圆角矩形表示一种状态。

状态分为初始状态(使用黑色实心圆圈表示,只能有一个)

终止状态(使用黑色实现圆圈,被一个圆圈着的,可以有多个终止状态)

状态转移是由事件引起的状态转移。



活动图 :一个活动到另一个活动表示状态迁移。

判定:看条件是否满足。

分支:表示可能执行的活动

结合:结合起来到下一个活动



甬道活动图:表示对象间



构件图:显示一组构件,以及构件之间的关系。

构件 、接口和关系。

1.对源代码进行建模。

2.对可执行体的发布建模。

3.对物理数据库建模,可以用于表示各种类型数据库表的关系。

4.对可了解的系统建模。例如负载均衡和故障修复。


部署图(实施图)


帮助理解分布式系统。



### 面向对象设计的流程图绘制方法 在中的面向对象设计部分,流程图是一种重要的工具,用于描述系统的控制流和逻辑结构。以下是关于流程图绘制的相关说明: #### 1. 面向对象设计中的基本概念 面向对象设计强调通过类和对象来建模现实世界的事物及其交互关系。因此,在绘制流程图时,需要关注以下几个方面: - **静态模型**:表示系统中的类、对象及其属性和操作[^2]。 - **动态模型**:展示这些对象之间的消息传递和行为序列。 #### 2. 流程图的基本构成要素 流程图通常由以下图形符号组成: - **矩形**:代表处理过程或活动。 - **菱形**:表示决策点(条件判断)。 - **椭圆形**:标记起始点和终止点。 - **箭头**:连接各个节点,指示执行顺序。 #### 3. 绘制流程图的具体步骤 虽然不允许使用诸如“首先”之类的引导词,但在实际应用中可以按照如下原则构建流程图: - 明确输入输出数据项。 - 定义主要功能模块并分配到不同区域。 - 使用标准符号描绘各阶段的操作细节。 下面是一个简单的Java语言示例程序对应的伪代码及相应流程图示意: ```java public class Example { public static void main(String[] args) { int a = 5; if (a % 2 == 0){ System.out.println("Even"); }else{ System.out.println("Odd"); } } } ``` ##### 对应的流程图描述为: 1. 开始于`main()`函数调用。 2. 初始化变量 `a=5`. 3. 判断是否满足条件 `(a%2==0)`. - 如果成立,则打印字符串 `"Even"` 并结束; - 否则,打印字符串 `"Odd"` 并结束。 ![Flowchart](https://via.placeholder.com/468x300?text=Example+FlowChart) > 注明:由于无法直接嵌入图像,请参照上述文字叙述自行画出对应图表。 此外需要注意的是,在计算 McCabe 复杂度时,要清楚理解路径数目的定义[^4]。 #### 4. 实际案例分析 假设我们正在开发一款图书管理系统,其中涉及借阅书籍的功能。那么该功能可能包括以下子任务: - 用户登录验证。 - 查询库存状态。 - 更新数据库记录。 对于这样一个场景,可以通过创建多个层次化的子流程分别展现其内部机制,从而形成完整的解决方案视图。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值