在他的书的极限编程应用的肯·奥尔漫不经心地提到的启动模式。肯特·贝克还提到它(至少是在2004年11月08日,电子邮件),但我一直没能找到在老地方的任何细节(谷歌,在c2.com维基等)

我在哪里可以找到更多信息?

有帮助吗?

解决方案

启动器模式实际上只是一个一个观察者模式的变化。你建立一个系统的有趣部分观察家,创造条件。使能器然后可以观察条件和使能/禁止的小部件。

E.g。当你加载了一个窗口,您可以创建看东西就像一个列表或组合框(或列表或组合框下方的型号)是否有选择的一些条件。你可以把它像“somethingSelectedCondition”。然后,您挂钩推动者,以被连接到一个或多个条件的小部件(可以和/或一起...虽然通常你只是想和他们一起练习)。

我通常由具有插件工厂使得你在传递的参数之一是命名为条件,当一起相与,启用/禁用一个微件的阵列实现它们。 E.g。

widgetFactory.createButton(字符串BUTTONLABEL,字符串methodActionName,字符串[] conditionNames)

在conditionNames将查找,在一个某种HashMap中是可用的情况下,创造一个CompositeCondition(其与运算所有条件观察到的布尔值的),并创建一个启动器,其监听CompositeCondition并告诉创建窗口小部件启用基于底层条件/禁用。

这听起来有点复杂,但是一旦你创建的底层基础架构,一对夫妇码线你条件的行,然后用户界面始终符合条件的同步。

我不认为我曾经正式写了启动器模式,或者我只是点你一个网址。

HTH,

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top