0
我使用Composite pattern表示分層數據結構:擴展複合模式?
- CompositeNodeA
- Leaf1
- Leaf2
- ...
- CompositeNodeB ....
每個葉代表一個特定的任務。首先,向用戶呈現特定場景的默認任務列表,然後用戶檢查/取消選中某些任務(例如,使用TreeView控件),並在接受選擇時,將數據全部持久保存到XML文件中。這些數據稍後會被(1)完成選中任務的引擎或(2)UI顯示已被選中的任務列表使用。
在某些情況下,某些(複雜)任務需要額外的「內部」任務作爲引擎生成複雜任務的先決條件。但是我不希望將這些「內部」任務顯示給用戶,但它們仍然被引擎使用並寫入XML文件。
知道我可以擁有大量不同的場景類型(每個場景都有自己的XML文件),每個場景都有完全不同的列表/排列/默認選擇任務,以及基於某些選擇的不同「內部」任務的一些任務,我如何實現XML文件的讀取/寫入和UI +引擎之間的接口?一個隱藏UI中的「內部」任務,但通過將它們寫入XML文件來跟蹤它們,並且允許在場景類型基礎上進行不同的自定義?