我有一些类的层次结构。我想实现这个层次结构中任何实例的延迟更新。换句话说,我们应该在唯一的情况下更新对象,我们将使用任何公共的对象方法。什么是允许实现这种行为的最佳设计模式?哪个设计模式允许执行延迟更新对象
这里是这样的情况下简单的例子:
我有复杂的模型,该模型不能更新视图(在性能的目的)。因此,视图在访问任何公共方法期间应自动更新自己
我有一些类的层次结构。我想实现这个层次结构中任何实例的延迟更新。换句话说,我们应该在唯一的情况下更新对象,我们将使用任何公共的对象方法。什么是允许实现这种行为的最佳设计模式?哪个设计模式允许执行延迟更新对象
这里是这样的情况下简单的例子:
我有复杂的模型,该模型不能更新视图(在性能的目的)。因此,视图在访问任何公共方法期间应自动更新自己
我在解释短语延期更新意味着延迟加载。在这种情况下,这听起来像是在描述proxy pattern。代理是用来控制访问到另一个对象或资源,并通过GoF的控制访问对象提到的第一个原因,
...推迟其 创建和初始化的全部费用,直到我们实际上需要使用它。
换句话说,只有当实际调用其中一个公共方法时才能更新对象。
设计模式很少用于性能目的。相反,你打破了一个模式来获得更好的表现。
要侦听模型中的变化,请使用Observer。
要在调用方法时执行某些操作,请使用代理。
Model-view-viewmodel (MVVM)与@vz0发布的内容有关。
在这种模式下,视图观察者视图模型,并相应地自我更新,使您可以将GUI从数据表示中分离出来。
但在我的情况下,模型无法通知有关其更改的视图。这是我的架构的弱点 – LmTinyToon
是的,这是我的意思 – LmTinyToon