概要
合理的类图未必是最精良的,而这又对最终软件开发进度以及后续的维护影响极大。
例子
电商平台的各类产品。
分析
一般的思路,可能会设计成这样,似乎也无可非议。简单粗暴,各有各的属性。但有个最大的问题,就是产品分类不能再改变。如果某电子产品,为了提高销量,把它从电子产品类更改到电器类,属性也要修改。
所以,如果发现类图中存在大量相似的类,那就需要改良了。上例中,可以考虑把共性的概念抽象成数据,产生一个“类别”类。
但是,商品的特征千差万别,这时可以考虑属性-属性值的方法。最后的类图如下:
结论
四个类就可以表示所有商品及其类别,并且以后可通过配置任意修改商品所属分类。