在系统中,我有一个用于View的接口IVIew
和一个明确的实现TextView
。 TextView还实现了Observer接口,因此可以更新模型中的更改。所以现在我可以在任何需要非显式View的地方使用IView
。这可能是一个控制器,它为持有平台的视图保存IView
或抽象工厂。
所以现在我很困惑,如果界面在这里有意义。除了init()或setModel()之类的方法声明之外,将不会有其他地方调用的功能,因为View会从模型中隐式获取更新。我还想过让IView成为一个抽象类,每个View应该知道的成员实现Observer。 有什么建议吗?
答案 0 :(得分:3)
由于定义视图需要来自MV *模式中不同数据源的数据,因此我要IView
扩展Oberserver
。这为更改提供了足够的灵活性,控制器可以与通用视图进行对话,这种视图很容易扩展。