四色原型概念辨析

摘要:
四色原型概念辨析Jay注意,这篇文章对DESC和PPT的理解可能存在错误,请参考对照《四色原型札记(一)》中对DESC和PPT的解释。应用四色原型进行分析,Line就是一个PPT,而Point就是DESC。如果使用四色原型进行分析,菜单就是一个PPT,而多个菜单里面反复出现的“宫保鸡丁”和“清炒菜心”就可以提炼为DESC。

四色原型概念辨析

Jay

注意,这篇文章对DESC和PPT的理解可能存在错误,请参考对照《四色原型札记(一)》中对DESC和PPT的解释。2010年3月28日凌晨。

1.DescriptionPPT辨析

1.1.DESCPPT基础概念

Description表示“描述”,更具体的说,它是“分类目录条目”描述。它一是一组反复使用的值。

PPTParty-Place-Thing)用于扮演不同角色的组织、人、地点、事务。PPT是指一个具体的,可以作为单个个体(每个单个个体之间有唯一标识符)被识别、区分出来的对象。

在《UML和模式应用》一书中举了一个有趣的例子(第9章,109页,“为什么使用描述类”),从这个例子中可以看出DESC的根源:

假设一种商品有100件,每一件商品都单独(注意,是单独)记录了它的ID、名称、价格等信息,这些信息是每件商品独有的(尽量每件商品的名称和价格都是一样的),在系统中就表示为每件商品是一个单独的实例,在数据库中就表示为每件商品是一条单独的记录。这些商品都保存在库存中(库存可以看作实例的集合,也是一个存储商品的数据表)。现在每售出一件商品,我们都会从库存中移除它,在系统中表示为从库存集合中释放一个实例,在数据库中就表示为从数据表中删除一条记录。那么最后当商品全部售完后,我们所有的对此商品的记录都被抹掉了,没有人知道这件商品的名称和价格。

上述问题表明,对象需要其它事物来记录其描述(也可以称为规格说明),DESC的价值也有在于:从现实角度来看,我们需要描述来记录事物的信息;从计算器角度看,描述可以减少冗余。

UML和模式应用》同进归纳了一些使用DESC的情景:

1.需要有关商品或服务的描述,独立于任何商品或服务的现有实例。

2.删除期所描述事物的实例后,会导致信息丢失,而这些信息是需要维护的(以后会使用到)。

3.减少冗余或重复信息。

有趣的是,《UML和模式应用》中建议给Product增加描述类ProductDesc,这是把Product类当做PPT,把ProductDesc类当做DESC。但在通常情况下,我们都喜欢把ProductDesc命名为Product(记录商品的信息),而把真正的Product命名为Stock(库存商品,记录一件具体的、有唯一ID的商品),那么就是把Product类当做DESC,把Stock当做PPT了。

综上所述,DESC的本质就是从PPT中提炼出来、为PPT服务,方便PPT的维护,并减少PPT冗余的值对象。

1.2.DESCPPT的关系

1.2.1.DESC是供PPT使用的值对象

DESC是一组可以被反复使用的值,也就是说,它是值对象(Value Object)。

例如有一个Line(线段)对象,而线段是由一组Point(坐标点)组成的。一个Point可以被多个Line反复使用,例如一个Point的坐标是(x=10y=20),当线段A经过这个坐标时,就会使用这个Point,而线段B经过同一个坐标时,使用的也是这个Point,那么我们可以把Point看作一组能够被反复使用的值,这些值只要赋予了初值,那么无论它被哪个对象使用,它的值都保持不变。

应用四色原型进行分析,Line就是一个PPT,而Point就是DESCPoint就是一组能够被多个Line反复使用的值。

四色原型概念辨析第1张
DESC
可以是分级的树形结构。

例如硬盘除了可以从品牌和容量两个方面描述之外,还可以从类型方面描述而类型就是一个分级的树形结构。硬盘的类型可以分为移动硬盘和非移动硬盘,非移动硬盘又进一步可以分为IDE硬盘和SCIS硬盘,这就是一个单根树结构。

对硬盘对象来说,硬盘类型是一组可以被反复使用的值,
四色原型概念辨析第2张
综上所述,
DESC就是一个值对象,供PPT反复使用,并且DESC的值是固定的,PPT在使用中不会更改DESC的值。

1.2.2.DESCPPT某一部份特性的抽象

PPT是由DESC组成的(当然除了DESC还有其它PPT自己的简单属性,但这些属性基本上可以视为PPT的“匿名”DESC),DESC就是PPT属性的归纳和抽象。

例如在点餐系统中,每个餐馆都有一份菜单,而“宫保鸡丁”和“清炒菜心”这些菜谱几乎每个餐馆的菜单上都有,那么我们就会把菜谱抽象出来,供多个菜单使用。

如果使用四色原型进行分析,菜单就是一个PPT,而多个菜单里面反复出现的“宫保鸡丁”和“清炒菜心”就可以提炼为DESC
四色原型概念辨析第3张
类似的场景还有货品与品牌。货品是一个
PPT,而品牌就是供货品反复使用的DESC,它里面有厂家名称等数据,这些数据货品仅仅是使用,并不会修改它。而且其中的“批号”因为是简单类型(一个字符串),所以直接作为货品的一个属性,但它也可以抽象为一个DESC,所以批号字段就是货品的“匿名”DESC四色原型概念辨析第4张
2.
PPTROLE辨析

ROLE就是角色,它是PPT参与MI的一种方式。ROLE只有依附于PPTMI才有意义。

但难点是,PPT也允许直接参与MIPPT直接关联MI),那么什么时候让ROLE“搭桥”,而什么时候直接让PPT参与MI

免责声明:文章转载自《四色原型概念辨析》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Springboot分布式,excel导出,运用POI导出,前端用的jspFastAPI 学习之路(四十九)WebSockets(五)修复接口测试中的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

RAID和LVM磁盘阵列

RAID磁盘冗余阵列  CPU的处理性能保持着高速增长,Intel公司在2017年最新发布的i9-7980XE处理器芯片更是达到了18核心36线程。但与此同时,硬盘设备的性能提升却不是很大,因此逐渐成为当代计算机整体性能的瓶颈。而且,由于硬盘设备需要进行持续、频繁、大量的IO操作,相较于其他设备,其损坏几率也大幅增加,导致重要数据丢失的几率也随之增加。 1...

【存储】RAID磁盘阵列选择

RAID磁盘阵列(Redundant Arrays of Inexpensive Disks) 一个基本思想:将多个容量较小、相对廉价的磁盘进行有机组合,从而以较低的成本获得与昂贵大容量磁盘相当的容量、性能、可靠性。 两个关键目标:高 I/O 性能(多磁盘并发读写)和高数据可靠性(数据校验和镜像)。 三个关键技术:镜像( Mirroring )、数据条带(...

(转!)Netdata---Linux系统性能实时监控平台部署

我一直以为人是慢慢变老的,其实不是,人其实是一瞬间变老的。                     -------村上春树《舞!舞!舞!》 转自https://www.cnblogs.com/kevingrace/p/7300191.html 通常来说,作为一个Linux的SA,很有必要掌握一个专门的系统监控工具,以便能随时了解系统资源的占用情况。下面就介...

bochs使用指南

Bochs是用C++开发的一个模拟器,模拟整个PC。它完全是靠软件模拟来实现的。从启动到重启,包括PC的外设键盘,鼠标,VGA卡,磁盘,网卡等,全部都是有软件来模拟的,因此它非常的适合开发操作系统。 Bochs安装: 双击安装文件,点下一步完成软件安装。 Bochs的配置 bochs的安装目录下为我们提供了一个配置文件的模版bochsrc-sample.t...

[Hardware] 机械硬盘和固态硬盘功耗对比

 因为有几块闲置的机械硬盘, 需要家用服务器中利用起来. 但需要考虑功耗. 3.5寸机械硬盘满速功耗约12W, 2.5寸的5W. 固态硬盘: 满速10W, 平时2-3W, 待机<1W. 如果机器散热较好, 可以上机械, 如果空间密闭, 建议还是固态....

Linux目录结构及开机流程详解

对Linux有一些了解的,都应该知道在Linux中所有的内容都是文件,包括硬盘等各种硬件在Linux中也都是按照文件来继续处理的,所以对Linux文件的了解将是非常重要的。 目录0x01 Linux重要目录结构 0x02 Linux启动流程 0x01 Linux重要目录结构/bin 用户的命令都在这里 使用which 命令 可以查看命令的所在路径 /bo...