【发布时间】:2011-09-23 19:35:53
【问题描述】:
我有一个实例化类层次结构的类。接口应该通过呈现单个类引用来隐藏所有内部层次结构。 (中间级别的类的接口应该以相同的方式隐藏内部实现细节。)我在决定如何将接口参数向下传递到最低级别并将状态更改向上传递到顶层时遇到了一点困难。我想出的东西变得一团糟。
我看到了一些关于黑板模式的讨论,但据我所见,它看起来是临时的和扁平的,而不是分层的。 (虽然平面与分层可能并不重要。)
我的类是一个日历视图,继承了 UIView。层次结构包括一个标题类、一个网格类(多次实例化)、一个平铺类(多次实例化),以及一些辅助类。它基于 Keith Lazuka 在 Objective C 中的 kal 日历。我决定根据我的需要重新组织它,并且想在引入灵活性问题之前重新考虑它的这一部分。
我的问题在标题中。
【问题讨论】:
-
看看类集群模式。
-
感谢您的建议。我查看了 Cocoa Design Patterns 中的类集群模式。如果我理解正确,对我来说,它看起来像子类型多态性,其中层次结构较低级别的所有对象都具有取决于数据类型的行为。我看不出这对具有不同行为和滚动的对象层次结构有何帮助,但它们的行为仍然具有功能和参数依赖性。
标签: objective-c design-patterns