关于用例间的关系

泛化关系

较为模糊的用例关系,某些标准直接将其限制成了类之间的关系,而不允许在用例之中使用。感觉上一般主要有两个角度:

  • 正常用例和各种异常处理用例;
  • 某个抽象功能根据不同子类别转换成相应的具体功能;

异常处理很好理解,主要想谈谈抽象功能与具体功能。
这种情况下的泛化,我感觉就是类似于质值的互相转化。根据值的不同采取不同的处理方式是非常常见的函数段:

switch(var)
{
case val0:
	do sth;
	break;
case val1:
	do sth;
	break;
case val2:
	do sth;
	break;
default:
	//nop
	;
}

我觉得,所谓的泛化有点类似更广义上的质成为了质量,而狭义的质则成了其质,然后成为了一种关于它们之间的switch关系。

switch(moreGeneralType)
{
case type0:
	do sth;
	break;
case type1:
	do sth;
	break;
case type2:
	do sth;
	break;
default:
	//nop
	;
}

见过比较多的情况是用于处理类似的情况,
【例如CPU模拟器中的指令向量,将各种不同的指令的都抽象成“指令”,然后建立一个数组,基类中定义exec()虚函数,由每个自类来进行相应的实现,最后再遍历这个“指令”数组,分别调用每个“指令”的exec()函数,达成对CPU顺序执行指令的模拟】。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值