0
为鱼商提供软件。 为了销售某种鱼,用户界面显示了鱼的图片。用户可以点击它,然后弹出一个窗口,他可以选择一个不同的鱼。UI中的依赖和回调
在一个天真的实现,组件需要
- 访问FishImageLibrary,检索图像
- 访问FishSelectionPopup,要求用户输入一个新的鱼类
解决方案1:一起传递两个类。 问题是我们的组件可能在另一个组件内。所以这两个类必须传递给我们的组件,从而在各处创建依赖关系。
解决方案2:回调。 使用回调的实现不会很干净,要么是因为组件可能位于另一个组件中,而且该事件必须在整个层次结构中传播。这需要对几个类进行更改。
对于一个真正干净的解决方案的任何建议?
由父组件分配图像:好主意。但是,当我们想要在第二个地方使用这个图片盒时不太好。命令模式打开Popup:是的,我会这样做。 – LTR 2011-04-28 15:22:52
“父组件”解决方案描述非常松散。这取决于你的应用程序如何工作和所有。但基本上你可以拥有尽可能多的图片盒,只要他们有一些超级组件可以设置他们的pictureAddress。他们可以实现与其他组件共享的更通用的setter方法,或者如果要将它们配置为像图片方向之类的东西,而这些方法无法自行解决,那么它们可以保持特定的方式。 – Jad 2011-04-28 15:43:41