我有個案例: 有SomeNode
,它由不同的基本部分組成:說一些類型的A,B,C
。還有一個轉換功能,將SomeNode
的實例轉換爲另一個SomeNode
。如何抽象數據和控件以支持易擴展性?
然而,可以有一些其他部分加入到SomeNode
,除了A,B,C
,所以說有可能是D
爲SomeNode
的第四部分。因此,轉換函數的接口也可能需要相應地更改新添加的組件SomeNode
,但可能會有一些相同的邏輯共享。
然後我一直在想,抽象SomeNode
及其轉換函數是否具有易擴展性?使用特質?怎麼樣?一些靈感的例子? 謝謝,
也許我沒有解釋好。我要尋找的另一件事是添加可以靈活根據需要結合其它組件。例如,我可以婉結合'D'和'E',或者只是使用'E'或'D '。在這種情況下,我們只是繼續定義所有不同類型的子類? – monica