我目前面临一个设计问题:
- 我想设计一个具有用户前端并允许用户在运行时添加不同“对象”的应用程序。这些对象一方面可能对当前存在的对象产生影响,另一方面可能依赖于它们。
例如:(也许是一个相当愚蠢的例子)
我有对象apple
和cherry
,它们彼此无关。现在(根据用户请求)worm
添加了对象,这导致苹果松动flavor (apple.flavor = 0)
但增加了 apple.weight。樱桃不受影响。此外,当worm
添加但不apple
存在时,worm.death = true
. 还必须考虑,“苹果”可能会在以后被删除,绑定到这个苹果的蠕虫实例必须“死”。
是否有设计模式来模拟这种结构?我遇到过访问者模式和依赖注入,但我不确定这些是最好的可能性。