据我了解,清洁架构实体被布置为所有上层都直接或间接依赖的层,基于这样的假设:实体中的数据和业务规则是架构中最稳定的部分。
同时,实体包含父层所依赖的数据类,如果没有映射器用于数据,则其余的数据类。
但现实中的数据往往不够稳定。
下面是一个示例:假设您有一个用于销售汽车的应用程序。汽车数据由一个结构体来描述,其中包含描述、品牌、价格等参数。要求正在发生变化,现在,应用程序中与汽车混合在一起,应该有摩托车销售广告。有些字段与汽车相同,例如价格和描述,有些字段不同。
您无法将有关汽车和摩托车的数据放入一个结构中,因为这样就可以添加任何类型的广告,并且该结构将像癌瘤一样膨胀。
在更高级别实现多态行为也不起作用,因为这将生成结构本身的依赖项+层次结构中的循环依赖项,或者直接从上层到该结构的依赖项,这也很糟糕。当然,您可以在整个映射器链中重复此行为,但这需要很长时间并且会增加代码量。
仍然需要创建一个单独的数据类型和转发该数据的整个分支,这同样不方便,并且会在顶层添加依赖项。
给人的印象是,当数据发生变化时,清洁架构是脆弱的。
也许我不明白一些基本的东西,这个问题可以轻松解决吗?如果是这样,请写下到底是什么,如果不是 - 你能做点什么吗?)