2011-04-15 35 views
3

我有一個包含多個部分的用戶界面(比如3x3網格中的9個UI部分)。根據一些條件,在運行時不同地實例化部分(即其UI組件)的內容。所以我想我會爲每個部分使用策略模式。除了簡單的條件外,實例化部分的狀態也用作實例化或重新實例化其他部分的入口條件。什麼是超級戰略模式?

例如,如果條件X爲真,則節(1,1)被實例化爲文本框和提交按鈕。如果X爲假,S(1,1)將包含一個表和一個提交按鈕。單擊按鈕時,如果S(1,1)有一個表格,則S(1,2)將包含一個表格,該表格在S(1,1)表格中詳細說明所選記錄。如果S(1,1)在單擊按鈕時用文本框實例化,則S(1,2)將包含一個表。它就這樣了;交互變得複雜。

什麼樣的設計模式可以幫助我協調這一複雜的相互作用,並從凌亂的嵌套IFS碼望而卻步?謝謝。

回答

1

這是最好的,如果你可以繼續使用純事件相互分離的每個組件 - 這將是Observer模式。想到其他Mediator