這是怎樣的一個設計問題:參考
class Suite
{
List<Plugins> Plugins {get;set;}
}
class DataCollector : Plugin
{
string Property1 {get;set;}
string Property2 {get;set;}
public void PrintMyName();
}
class Measurement: Plugin
{
string Property1 {get;set;}
string Property2 {get;set;}
public void PrintMyName();
}
現在,我想的類套件可序列化。這裏的問題是這樣的:
XML序列化基本上是用來序列化的DTO類型的對象,所以你基本上是序列化/反序列化狀態的屬性,那就是精細
這是要序列化的這種特殊類包含Type Plugin(包含包含某些屬性值的屬性組合)+功能主義者。
這意味着我需要使用工廠來獲取對象的實際實例,使Plugin能夠通過屬性值實現其所有功能。
我在看XMLSrializable + Factory組合嗎?有沒有什麼好的優雅方式來實現這一目標?
什麼是「功能主義」?此外,可能最好不要在MS Word中鍵入您的代碼,其中不應該大寫的關鍵字不幸會大寫。 ('class','public','void'等) –